Skip to content

Instantly share code, notes, and snippets.

@brainstorm
Created March 16, 2016 06:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brainstorm/b80a6b9b9c9bc1fd7738 to your computer and use it in GitHub Desktop.
Save brainstorm/b80a6b9b9c9bc1fd7738 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
from toil.job import Job
def fn(job, i):
job.fileStore.logToMaster("Parent says: i is %s" % i, level=100)
return i+1
def child_worker(job, i):
job.fileStore.logToMaster("Child says: i is %s" % i, level=100)
return i
def sum_it_all(job):
job.fileStore.logToMaster("Merging results from all children", level=100)
if __name__=="__main__":
## Toil options
options = Job.Runner.getDefaultOptions("./toilWorkflowRun")
options.batchSystem = 'slurm'
options.logLevel = 'DEBUG'
# Dummy parent job
parent = Job.wrapJobFn(fn, 1)
for child in xrange(1,5):
parent.addChildJobFn(child_worker, child)
wrapup = parent.addFollowOnJobFn(sum_it_all)
Job.Runner.startToil(parent, options)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment