3410: Add replication attributes (and rules about updating them) to model and docs.
[arvados.git] / sdk / python / setup.py
index 5ae4e64b3389849cd0f68f83785db5929f2190d0..ca28025fea64ae6b388af4388337814494a8c0c8 100644 (file)
@@ -1,27 +1,19 @@
 #!/usr/bin/env python
 
 import os
-import subprocess
+import sys
+import setuptools.command.egg_info as egg_info_cmd
 
 from setuptools import setup, find_packages
 
-SETUP_DIR = os.path.dirname(__file__)
+SETUP_DIR = os.path.dirname(__file__) or '.'
 README = os.path.join(SETUP_DIR, 'README.rst')
 
-cmd_opts = {'egg_info': {}}
 try:
-    git_tags = subprocess.check_output(
-        ['git', 'log', '--first-parent', '--max-count=1',
-         '--format=format:%ci %h', SETUP_DIR]).split()
-    assert len(git_tags) == 4
-except (AssertionError, OSError, subprocess.CalledProcessError):
-    pass
-else:
-    del git_tags[2]    # Remove timezone
-    for ii in [0, 1]:  # Remove non-digits from other datetime fields
-        git_tags[ii] = ''.join(c for c in git_tags[ii] if c.isdigit())
-    cmd_opts['egg_info']['tag_build'] = '.{}{}.{}'.format(*git_tags)
-
+    import gittaggers
+    tagger = gittaggers.EggInfoFromGit
+except ImportError:
+    tagger = egg_info_cmd.egg_info
 
 setup(name='arvados-python-client',
       version='0.1',
@@ -34,22 +26,25 @@ 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-ws',
+        'bin/arv-run',
+        'bin/arv-ws'
         ],
       install_requires=[
         'python-gflags',
         'google-api-python-client',
         'httplib2',
+        'requests>=2.4',
         'urllib3',
         'ws4py'
         ],
       test_suite='tests',
       tests_require=['mock>=1.0', 'PyYAML'],
       zip_safe=False,
-      options=cmd_opts,
+      cmdclass={'egg_info': tagger},
       )