6264: Arvados CWL runner prototype work in progress.
[arvados.git] / sdk / python / setup.py
index 754d89bdad70e120367de344799fe337a0b4e1ab..6288ecad49bd0a61202408dae6f9ad3d462eba59 100644 (file)
@@ -1,32 +1,19 @@
 #!/usr/bin/env python
 
 import os
-import subprocess
-import time
+import sys
+import setuptools.command.egg_info as egg_info_cmd
 
 from setuptools import setup, find_packages
-from setuptools.command.egg_info import egg_info
 
-SETUP_DIR = os.path.dirname(__file__)
+SETUP_DIR = os.path.dirname(__file__) or '.'
 README = os.path.join(SETUP_DIR, 'README.rst')
 
-class TagBuildWithCommit(egg_info):
-    """Tag the build with the sha1 and date of the last git commit.
-
-    If a build tag has already been set (e.g., "egg_info -b", building
-    from source package), leave it alone.
-    """
-    def tags(self):
-        if self.tag_build is None:
-            git_tags = subprocess.check_output(
-                ['git', 'log', '--first-parent', '--max-count=1',
-                 '--format=format:%ct %h', SETUP_DIR]).split()
-            assert len(git_tags) == 2
-            git_tags[0] = time.strftime(
-                '%Y%m%d%H%M%S', time.gmtime(int(git_tags[0])))
-            self.tag_build = '.{}+{}'.format(*git_tags)
-        return egg_info.tags(self)
-
+try:
+    import gittaggers
+    tagger = gittaggers.EggInfoFromGit
+except ImportError:
+    tagger = egg_info_cmd.egg_info
 
 setup(name='arvados-python-client',
       version='0.1',
@@ -39,25 +26,27 @@ setup(name='arvados-python-client',
       license='Apache 2.0',
       packages=find_packages(),
       scripts=[
-        'bin/arv-copy',
-        'bin/arv-get',
-        'bin/arv-keepdocker',
-        'bin/arv-ls',
-        'bin/arv-normalize',
-        'bin/arv-put',
-        'bin/arv-run',
-        'bin/arv-ws'
-        ],
+          'bin/arv-copy',
+          'bin/arv-get',
+          'bin/arv-keepdocker',
+          'bin/arv-ls',
+          'bin/arv-normalize',
+          'bin/arv-put',
+          'bin/arv-run',
+          'bin/arv-ws',
+          'bin/cwl-runner'
+      ],
       install_requires=[
-        'python-gflags',
-        'google-api-python-client',
-        'httplib2',
-        'requests>=2.4',
-        'urllib3',
-        'ws4py'
-        ],
+          'ciso8601',
+          'google-api-python-client',
+          'httplib2',
+          'pycurl>=7.19.5.1',
+          'python-gflags',
+          'ws4py',
+          'cwltool'
+      ],
       test_suite='tests',
       tests_require=['mock>=1.0', 'PyYAML'],
       zip_safe=False,
-      cmdclass={'egg_info': TagBuildWithCommit},
+      cmdclass={'egg_info': tagger},
       )