#!/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
-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_cmd.egg_info
+short_tests_only = False
+if '--short-tests-only' in sys.argv:
+ short_tests_only = True
+ sys.argv.remove('--short-tests-only')
setup(name='arvados-python-client',
version='0.1',
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-copy',
+ 'bin/arv-get',
+ 'bin/arv-keepdocker',
+ 'bin/arv-ls',
+ 'bin/arv-normalize',
+ 'bin/arv-put',
+ 'bin/arv-run',
+ 'bin/arv-ws'
+ ],
+ data_files=[
+ ('share/doc/arvados-python-client', ['LICENSE-2.0.txt', 'README.rst']),
+ ],
install_requires=[
- 'python-gflags',
- 'google-api-python-client',
- 'httplib2',
- 'urllib3',
- 'ws4py'
- ],
+ 'google-api-python-client==1.4.2',
+ 'oauth2client >=1.4.6, <2',
+ 'ciso8601',
+ 'httplib2',
+ 'pycurl >=7.19.5.1, <7.21.5',
+ 'python-gflags<3.0',
+ 'setuptools',
+ 'ws4py'
+ ],
test_suite='tests',
- tests_require=['mock>=1.0', 'PyYAML'],
+ tests_require=['pbr<1.7.0', 'mock>=1.0', 'PyYAML'],
zip_safe=False,
- options=cmd_opts,
+ cmdclass={'egg_info': tagger},
)