X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/10b3fe2ae3a37ee473684177aa6e4e9f090a230e..d7d00f5140b7622fdc55a4058be73b89d587b7b2:/sdk/cwl/arvados_cwl/arvcontainer.py diff --git a/sdk/cwl/arvados_cwl/arvcontainer.py b/sdk/cwl/arvados_cwl/arvcontainer.py index 20601243b1..5c697b3750 100644 --- a/sdk/cwl/arvados_cwl/arvcontainer.py +++ b/sdk/cwl/arvados_cwl/arvcontainer.py @@ -53,7 +53,7 @@ class ArvadosContainer(object): dirs = set() for f in self.pathmapper.files(): - pdh, p, tp = self.pathmapper.mapper(f) + pdh, p, tp, stg = self.pathmapper.mapper(f) if tp == "Directory" and '/' not in pdh: mounts[p] = { "kind": "collection", @@ -62,15 +62,22 @@ class ArvadosContainer(object): dirs.add(pdh) for f in self.pathmapper.files(): - res, p, tp = self.pathmapper.mapper(f) - pdh, path = res[5:].split("/", 1) + res, p, tp, stg = self.pathmapper.mapper(f) + if res.startswith("keep:"): + res = res[5:] + elif res.startswith("/keep/"): + res = res[6:] + else: + continue + sp = res.split("/", 1) + pdh = sp[0] if pdh not in dirs: mounts[p] = { "kind": "collection", "portable_data_hash": pdh } - if path: - mounts[p]["path"] = path + if len(sp) == 2: + mounts[p]["path"] = sp[1] with Perf(metrics, "generatefiles %s" % self.name): if self.generatefiles["listing"]: