X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/525e930dcb35b440424d53b09a9788fd8726b781..f3658ececac430166ee9766be1deee6a61153d0f:/crunch_scripts/cwl-runner diff --git a/crunch_scripts/cwl-runner b/crunch_scripts/cwl-runner index d4d61d43ac..8a4de24d35 100755 --- a/crunch_scripts/cwl-runner +++ b/crunch_scripts/cwl-runner @@ -1,5 +1,13 @@ #!/usr/bin/env python +# Crunch script integration for running arvados-cwl-runner (importing +# arvados_cwl module) inside a crunch job. +# +# This gets the job record, transforms the script parameters into a valid CWL +# input object, then executes the CWL runner to run the underlying workflow or +# tool. When the workflow completes, record the output object in an output +# collection for this runner job. + import arvados import arvados_cwl import arvados.collection @@ -13,6 +21,9 @@ import argparse from arvados.api import OrderedJsonModel from cwltool.process import adjustFiles +# Print package versions +logging.info(cwltool.main.versionstring()) + api = arvados.api("v1") try: @@ -30,13 +41,14 @@ try: t = cwltool.main.load_tool(job_order_object, False, True, runner.arvMakeTool, True) - np = argparse.Namespace() - np.project_uuid = arvados.current_job()["owner_uuid"] - np.enable_reuse = True - np.submit = False - np.debug = True - np.quiet = False - outputObj = runner.arvExecutor(t, job_order_object, "", np, cwl_runner_job={"uuid": arvados.current_job()["uuid"], "state": arvados.current_job()["state"]}) + args = argparse.Namespace() + args.project_uuid = arvados.current_job()["owner_uuid"] + args.enable_reuse = True + args.submit = False + args.debug = True + args.quiet = False + args.ignore_docker_for_reuse = False + outputObj = runner.arvExecutor(t, job_order_object, "", args, cwl_runner_job={"uuid": arvados.current_job()["uuid"], "state": arvados.current_job()["state"]}) files = {} def capture(path):