Skip to content

Commit

Permalink
Create tesintro.md
Browse files Browse the repository at this point in the history
  • Loading branch information
erikvdbergh authored Mar 5, 2018
1 parent 7736e8a commit 7f1f1e6
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions tesintro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# A very brief introduction to TES

## Task Execution Service standard
The Global Alliance for Genomics and Health (GA4GH) is an international consortium of academic and industry partners that try to establish standards to promote and facilitate collaoration and data exchange in the life sciences. As part of the 'Cloud Workstream' of this effort 4 standards have been proposed to facilitate running scientific workflows in a cloud environment: the Data Object Service (DOS), Tool Registration Service (TRS), Workflow Execution Service (WES) and the Task Execution Service (TES). These for standards are meant to be independent but complementary to each other in running workflows and handling the associated data needs. TES is a standard that represents the smallest unit of computational work in a workflow that can be indepently run in a cloud. TESK is an implementation of this standard by EMBL-EBI running on Google's Kubernetes container orchestration platform.

## Technical overview
A minimal TES task is represented as follows:

```json
{
"inputs": [
{
"url": "http://adresss/to/input_file",
"path": "/container/input"
}
],
"outputs" : [
{
"url" : "file://path/to/output_file",
"path" : "/container/output"
}
],
"executors" : [
{
"image" : "ubuntu",
"command" : ["md5sum", "/container/input"],
"stdout" : "/container/output"
}
]
}
```

Inputs and outputs are expected to have an URI that can be resolved by the relevant implementation. The executor 'image' entry is ay image that can be reached by the relevant docker instance of the implementation, and would usually refer to a public image on Dockerhub or Quay. TES tasks are submitted through a RESTful API using JSON. Also see the [full spec](https://github.com/ga4gh/task-execution-schemas) for a complete list of possible fields and their description.

0 comments on commit 7f1f1e6

Please sign in to comment.