5 import arvados.collection
7 from cwltool.process import shortname
10 api = arvados.api("v1")
13 job_order_object = arvados.current_job()['script_parameters']
15 for k,v in job_order_object.items():
16 if arvados.util.keep_locator_pattern.match(v):
17 job_order_object[k] = "%s/%s" % (os.environ['TASK_KEEPMOUNT'], v)
19 runner = arvados_cwl.ArvCwlRunner(api_client=arvados.api('v1', model=OrderedJsonModel()))
21 t = cwltool.main.load_tool(job_order_object, False, True, runner.arvMakeTool, True)
23 outputObj = runner.arvExecutor(t, job_order_object, "", None)
25 c = arvados.collection.Collection()
26 with c.open("cwl.output.json") as f:
27 json.dump(f, indent=4)
29 api.job_tasks().update(uuid=arvados.current_task()['uuid'],
31 'output': c.save_new(create_collection_record=False),
36 api.job_tasks().update(uuid=arvados.current_task()['uuid'],