def add_arv_hints():
cache = {}
res = pkg_resources.resource_stream(__name__, 'arv-cwl-schema.yml')
- cache["https://w3id.org/cwl/arv-cwl-schema.yml"] = res.read()
+ cache["http://arvados.org/cwl"] = res.read()
res.close()
_, cwlnames, _, _ = cwltool.process.get_schema("v1.0")
- _, extnames, _, _ = schema_salad.schema.load_schema("https://w3id.org/cwl/arv-cwl-schema.yml", cache=cache)
+ _, extnames, _, _ = schema_salad.schema.load_schema("http://arvados.org/cwl", cache=cache)
for n in extnames.names:
if not cwlnames.has_name("http://arvados.org/cwl#"+n, ""):
cwlnames.add_name("http://arvados.org/cwl#"+n, "", extnames.get_name(n, ""))
from cwltool.pack import pack
from cwltool.load_tool import fetch_document
from cwltool.process import shortname
-from cwltool.workflow import Workflow
+from cwltool.workflow import Workflow, WorkflowException
from cwltool.pathmapper import adjustFileObjs, adjustDirObjs
import ruamel.yaml as yaml
def keepmount(obj):
if obj["location"].startswith("keep:"):
obj["location"] = "/keep/" + obj["location"][5:]
+ elif obj["location"].startswith("_:"):
+ pass
else:
- raise Exception("Uh oh %s" % obj["location"])
+ raise WorkflowException("Location is not a keep reference or a literal: '%s'" % obj["location"])
if "listing" in obj:
del obj["listing"]
adjustFileObjs(joborder_keepmount, keepmount)