8460: Merge branch 'master' into 8460-websocket-go
[arvados.git] / sdk / cwl / arvados_cwl / arvdocker.py
index f9dba6eff4081e13103123146a1408e291672ca9..7f6ab587d323a7dc65e39c00e8e1b38d019f009d 100644 (file)
@@ -36,14 +36,18 @@ def arv_docker_get_image(api_client, dockerRequirement, pull_image, project_uuid
         cwltool.docker.get_image(dockerRequirement, pull_image)
 
         # Upload image to Arvados
-        args = ["--project-uuid="+project_uuid, image_name]
+        args = []
+        if project_uuid:
+            args.append("--project-uuid="+project_uuid)
+        args.append(image_name)
         if image_tag:
             args.append(image_tag)
         logger.info("Uploading Docker image %s", ":".join(args[1:]))
         try:
             arvados.commands.keepdocker.main(args, stdout=sys.stderr)
-        except SystemExit:
-            raise WorkflowException()
+        except SystemExit as e:
+            if e.code:
+                raise WorkflowException("keepdocker exited with code %s" % e.code)
 
         images = arvados.commands.keepdocker.list_images_in_arv(api_client, 3,
                                                                 image_name=image_name,