5175: Do not add +sha1 tag to Python packages ever.
[arvados.git] / sdk / python / setup.py
index 46ca7d2c74e1ef3b67f0eb8689d4616fc63e62fe..48568005461390def0490e4ee0098294a317b104 100644 (file)
@@ -1,26 +1,19 @@
 #!/usr/bin/env python
 
 import os
-import subprocess
-import time
+import sys
 
 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')
 
-cmd_opts = {'egg_info': {}}
 try:
-    git_tags = subprocess.check_output(
-        ['git', 'log', '--first-parent', '--max-count=1',
-         '--format=format:%ct %h', SETUP_DIR]).split()
-    assert len(git_tags) == 2
-except (AssertionError, OSError, subprocess.CalledProcessError):
-    pass
-else:
-    git_tags[0] = time.strftime('%Y%m%d%H%M%S', time.gmtime(int(git_tags[0])))
-    cmd_opts['egg_info']['tag_build'] = '.{}.{}'.format(*git_tags)
-
+    import gittaggers
+    tagger = gittaggers.EggInfoFromGit
+except ImportError:
+    tagger = egg_info
 
 setup(name='arvados-python-client',
       version='0.1',
@@ -53,5 +46,5 @@ setup(name='arvados-python-client',
       test_suite='tests',
       tests_require=['mock>=1.0', 'PyYAML'],
       zip_safe=False,
-      options=cmd_opts,
+      cmdclass={'egg_info': tagger},
       )