10194: Use SETUP_DIR for checking git version and writing _version.py. Add
authorPeter Amstutz <peter.amstutz@curoverse.com>
Fri, 21 Oct 2016 13:52:36 +0000 (09:52 -0400)
committerPeter Amstutz <peter.amstutz@curoverse.com>
Fri, 21 Oct 2016 13:52:36 +0000 (09:52 -0400)
comment about calling cwltool.docker.get_image(dockerRequirement, pull_image).

sdk/cwl/arvados_cwl/arvdocker.py
sdk/cwl/setup.py

index 3e5414ff77b48db2e1236093b56eda2f95f0cd9a..244dd3d3573a8738d7324207b439cb910aa3eba6 100644 (file)
@@ -23,7 +23,10 @@ def arv_docker_get_image(api_client, dockerRequirement, pull_image, project_uuid
                                                             image_tag=image_tag)
 
     if not images:
-        imageId = cwltool.docker.get_image(dockerRequirement, pull_image)
+        # Fetch Docker image if necessary.
+        cwltool.docker.get_image(dockerRequirement, pull_image)
+
+        # Upload image to Arvados
         args = ["--project-uuid="+project_uuid, image_name]
         if image_tag:
             args.append(image_tag)
index 5caa5c818aac9b02e92e736f0a9eaa4e97fd3196..4adcac4daf87b4f4899fb883bb6fe499e4ee53d0 100644 (file)
@@ -16,15 +16,19 @@ try:
 except ImportError:
     tagger = egg_info_cmd.egg_info
 
+versionfile = os.path.join(SETUP_DIR, "arvados_cwl/_version.py")
 try:
     gitinfo = subprocess.check_output(
         ['git', 'log', '--first-parent', '--max-count=1',
-         '--format=format:%H']).strip()
-    with open("arvados_cwl/_version.py", "w") as f:
+         '--format=format:%H', SETUP_DIR]).strip()
+    with open(versionfile, "w") as f:
         f.write("__version__ = '%s'\n" % gitinfo)
 except Exception as e:
-    print(e)
-    pass
+    # When installing from package, it won't be part of a git repository, and
+    # check_output() will raise an exception.  But the package should include the
+    # version file, so we can proceed.
+    if not os.path.exists(versionfile):
+        raise
 
 setup(name='arvados-cwl-runner',
       version='1.0',