13201: disable redundant validation.
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Wed, 4 Apr 2018 18:55:07 +0000 (14:55 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Thu, 5 Apr 2018 13:51:11 +0000 (09:51 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

sdk/cwl/arvados_cwl/__init__.py
sdk/cwl/arvados_cwl/arvcontainer.py
sdk/cwl/arvados_cwl/crunch_script.py
sdk/cwl/setup.py

index e4f5ceab7465cb17372466b265d417e02a6d4637..a0b71723c13163011f9d153454de0f9fb0528bee 100644 (file)
@@ -377,11 +377,13 @@ class ArvCwlRunner(object):
 
         # Reload tool object which may have been updated by
         # upload_workflow_deps
+        # Don't validate this time because it will just print redundant errors.
         tool = self.arv_make_tool(tool.doc_loader.idx[tool.tool["id"]],
                                   makeTool=self.arv_make_tool,
                                   loader=tool.doc_loader,
                                   avsc_names=tool.doc_schema,
-                                  metadata=tool.metadata)
+                                  metadata=tool.metadata,
+                                  do_validate=False)
 
         # Upload local file references in the job order.
         job_order = upload_job_order(self, "%s input" % kwargs["name"],
@@ -679,6 +681,14 @@ def arg_parser():  # type: () -> argparse.ArgumentParser
                         help="Workflow priority (range 1..1000, higher has precedence over lower, containers api only)",
                         default=DEFAULT_PRIORITY)
 
+    parser.add_argument("--disable-validate", dest="do_validate",
+                        action="store_false", default=True,
+                        help=argparse.SUPPRESS)
+
+    parser.add_argument("--disable-js-validation",
+                        action="store_true", default=False,
+                        help=argparse.SUPPRESS)
+
     exgroup = parser.add_mutually_exclusive_group()
     exgroup.add_argument("--trash-intermediate", action="store_true",
                         default=False, dest="trash_intermediate",
index 56281e3c75f16592bd77ca575c8cd921dde94957..5c11babfc62375037e648a5615f48e3a590a37d2 100644 (file)
@@ -395,7 +395,11 @@ class RunnerContainer(Runner):
                 container_req["properties"]["template_uuid"] = self.tool.tool["id"][6:33]
 
 
-        command = ["arvados-cwl-runner", "--local", "--api=containers", "--no-log-timestamps"]
+        # --local means execute the workflow instead of submitting a container request
+        # --api=containers means use the containers API
+        # --no-log-timestamps means don't add timestamps (the logging infrastructure does this)
+        # --disable-validate because we already validated so don't need to do it again
+        command = ["arvados-cwl-runner", "--local", "--api=containers", "--no-log-timestamps", "--disable-validate"]
         if self.output_name:
             command.append("--output-name=" + self.output_name)
             container_req["output_name"] = self.output_name
index fec728f5b785ef4897e05a334c920b93c12f7146..aaeffea24b22ef0a3dc4a2de3b35e78f4d5d8e46 100644 (file)
@@ -129,6 +129,8 @@ def run():
         args.trash_intermediate = False
         args.intermediate_output_ttl = 0
         args.priority = arvados_cwl.DEFAULT_PRIORITY
+        args.do_validate = True
+        args.disable_js_validation = False
 
         runner.arv_executor(t, job_order_object, **vars(args))
     except Exception as e:
index aed96c6023ad85ee13eab2d4339eab3bc860abb6..7893aa97fa2261aece6a14f49230834122c674fe 100644 (file)
@@ -33,7 +33,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.20180326152342',
+          'cwltool==1.0.20180403145700',
           'schema-salad==2.6.20171201034858',
           'typing==3.5.3.0',
           'ruamel.yaml==0.13.7',