[ARVADOS] created: 1.1.3-227-gcfc90c7

Git user git at public.curoverse.com
Thu Mar 22 16:21:41 EDT 2018


        at  cfc90c7c90afe0e953aaf1ec0a4ebf539898d8f5 (commit)


commit cfc90c7c90afe0e953aaf1ec0a4ebf539898d8f5
Author: Peter Amstutz <pamstutz at veritasgenetics.com>
Date:   Thu Mar 22 16:07:54 2018 -0400

    13245: Bump cwltool version
    
    Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz at veritasgenetics.com>

diff --git a/sdk/cwl/setup.py b/sdk/cwl/setup.py
index 752633a..da51540 100644
--- a/sdk/cwl/setup.py
+++ b/sdk/cwl/setup.py
@@ -41,7 +41,7 @@ setup(name='arvados-cwl-runner',
       # Note that arvados/build/run-build-packages.sh looks at this
       # file to determine what version of cwltool and schema-salad to build.
       install_requires=[
-          'cwltool==1.0.20180306163216',
+          'cwltool==1.0.20180322194411',
           'schema-salad==2.6.20171201034858',
           'typing==3.5.3.0',
           'ruamel.yaml==0.13.7',

commit 44426069373d8657706d796f37618b9d7f6eca59
Author: Peter Amstutz <pamstutz at veritasgenetics.com>
Date:   Thu Mar 22 14:56:21 2018 -0400

    13245: Sort InitialWorkDir contents to fix conflicts and redundant mounts.
    
    Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz at veritasgenetics.com>

diff --git a/sdk/cwl/arvados_cwl/arvcontainer.py b/sdk/cwl/arvados_cwl/arvcontainer.py
index 39b9c24..56281e3 100644
--- a/sdk/cwl/arvados_cwl/arvcontainer.py
+++ b/sdk/cwl/arvados_cwl/arvcontainer.py
@@ -120,10 +120,12 @@ class ArvadosContainer(object):
                 generatemapper = NoFollowPathMapper([self.generatefiles], "", "",
                                                     separateDirs=False)
 
-                logger.debug("generatemapper is %s", generatemapper._pathmap)
+                sorteditems = sorted(generatemapper.items(), None, key=lambda n: n[1].target)
+
+                logger.debug("generatemapper is %s", sorteditems)
 
                 with Perf(metrics, "createfiles %s" % self.name):
-                    for f, p in generatemapper.items():
+                    for f, p in sorteditems:
                         if not p.target:
                             pass
                         elif p.type in ("File", "Directory", "WritableFile", "WritableDirectory"):
@@ -155,8 +157,10 @@ class ArvadosContainer(object):
                 with Perf(metrics, "generatefiles.save_new %s" % self.name):
                     vwd.save_new()
 
-                for f, p in generatemapper.items():
-                    if not p.target or self.arvrunner.secret_store.has_secret(p.resolved):
+                prev = None
+                for f, p in sorteditems:
+                    if (not p.target or self.arvrunner.secret_store.has_secret(p.resolved) or
+                        (prev is not None and p.target.startswith(prev))):
                         continue
                     mountpoint = "%s/%s" % (self.outdir, p.target)
                     mounts[mountpoint] = {"kind": "collection",
@@ -164,6 +168,7 @@ class ArvadosContainer(object):
                                           "path": p.target}
                     if p.type.startswith("Writable"):
                         mounts[mountpoint]["writable"] = True
+                    prev = p.target + "/"
 
         container_request["environment"] = {"TMPDIR": self.tmpdir, "HOME": self.outdir}
         if self.environment:

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list