From 49043f14cb72a6eb5825aea529e3477b73e297c7 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Mon, 13 Jun 2016 16:17:45 -0400 Subject: [PATCH] 8442: Debugging container --submit with crunch2 --- sdk/cwl/arvados_cwl/__init__.py | 4 ++++ sdk/cwl/arvados_cwl/arvcontainer.py | 9 +++++++-- sdk/cwl/arvados_cwl/fsaccess.py | 1 + 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/sdk/cwl/arvados_cwl/__init__.py b/sdk/cwl/arvados_cwl/__init__.py index 136d5aec15..ba26816c21 100644 --- a/sdk/cwl/arvados_cwl/__init__.py +++ b/sdk/cwl/arvados_cwl/__init__.py @@ -19,6 +19,7 @@ import arvados.events from .arvcontainer import ArvadosContainer, RunnerContainer from .arvjob import ArvadosJob, RunnerJob, RunnerTemplate from .arvtool import ArvadosCommandTool +from .fsaccess import CollectionFsAccess from cwltool.process import shortname, UnsupportedRequirement from arvados.api import OrderedJsonModel @@ -184,6 +185,9 @@ class ArvCwlRunner(object): if self.pipeline: self.api.pipeline_instances().update(uuid=self.pipeline["uuid"], body={"state": "Failed"}).execute(num_retries=self.num_retries) + if runnerjob and self.crunch2: + self.api.container_requests().update(uuid=runnerjob.uuid, + body={"priority": "0"}).execute(num_retries=self.num_retries) finally: self.cond.release() diff --git a/sdk/cwl/arvados_cwl/arvcontainer.py b/sdk/cwl/arvados_cwl/arvcontainer.py index be1140469a..4c80896fbe 100644 --- a/sdk/cwl/arvados_cwl/arvcontainer.py +++ b/sdk/cwl/arvados_cwl/arvcontainer.py @@ -152,7 +152,7 @@ class RunnerContainer(Runner): workflowname = os.path.basename(self.tool.tool["id"]) workflowpath = "/var/lib/cwl/workflow/%s" % workflowname workflowcollection = workflowmapper.mapper(self.tool.tool["id"])[1] - workflowcollection = workflowcollection[5:workflowcollection.index('/')] + workflowcollection = workflowcollection[workflowcollection.index('/')] jobpath = "/var/lib/cwl/job/cwl.input.json" container_image = arv_docker_get_image(self.arvrunner.api, @@ -181,11 +181,16 @@ class RunnerContainer(Runner): "stdout": { "kind": "file", "path": "/var/spool/cwl/cwl.output.json" + }, + "/var/spool/cwl": { + "kind": "collection", + "writable": True } }, "runtime_constraints": { "vcpus": 1, - "ram": 1024*1024*256 + "ram": 1024*1024*256, + "API": True } } diff --git a/sdk/cwl/arvados_cwl/fsaccess.py b/sdk/cwl/arvados_cwl/fsaccess.py index c911895fa2..d48c93a14a 100644 --- a/sdk/cwl/arvados_cwl/fsaccess.py +++ b/sdk/cwl/arvados_cwl/fsaccess.py @@ -1,4 +1,5 @@ import fnmatch +import cwltool.process class CollectionFsAccess(cwltool.process.StdFsAccess): """Implement the cwltool FsAccess interface for Arvados Collections.""" -- 2.30.2