21317: cleanup Arvados-DCO-1.1-Signed-off-by: Lisa Knox <lisa.knox@curii.com>
[arvados.git] / services / dockercleaner / setup.py
index 3ca9714066e23a1e3ad2c58d40691686da2b36e8..d5c572f2ed46885231bde9edbb31b980f0b7f5c2 100644 (file)
@@ -1,37 +1,54 @@
 #!/usr/bin/env python3
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
 
+from __future__ import absolute_import
 import os
 import sys
-import setuptools.command.egg_info as egg_info_cmd
+import re
 
 from setuptools import setup, find_packages
 
-try:
-    import gittaggers
-    tagger = gittaggers.EggInfoFromGit
-except ImportError:
-    tagger = egg_info_cmd.egg_info
+SETUP_DIR = os.path.dirname(__file__) or '.'
+README = os.path.join(SETUP_DIR, 'README.rst')
+
+import arvados_version
+version = arvados_version.get_version(SETUP_DIR, "arvados_docker")
+
+short_tests_only = False
+if '--short-tests-only' in sys.argv:
+    short_tests_only = True
+    sys.argv.remove('--short-tests-only')
 
 setup(name="arvados-docker-cleaner",
-      version="0.1",
+      version=version,
       description="Arvados Docker cleaner",
       author="Arvados",
       author_email="info@arvados.org",
       url="https://arvados.org",
-      download_url="https://github.com/curoverse/arvados.git",
+      download_url="https://github.com/arvados/arvados.git",
       license="GNU Affero General Public License version 3.0",
       packages=find_packages(),
+      entry_points={
+          'console_scripts': ['arvados-docker-cleaner=arvados_docker.cleaner:main'],
+      },
       data_files=[
-          ('share/doc/arvados-docker-cleaner', ['agpl-3.0.txt']),
+          ('share/doc/arvados-docker-cleaner', ['agpl-3.0.txt', 'arvados-docker-cleaner.service']),
       ],
       install_requires=[
-        'docker-py==1.7.2',
-        ],
-      tests_require=[
-        'pbr<1.7.0',
-        'mock',
-        ],
+          # The requirements for the docker library broke when requests started
+          # supporting urllib3 2.0.
+          # See <https://github.com/docker/docker-py/issues/3113>.
+          # Make sure we get a version with the bugfix, assuming Python is
+          # recent enough.
+          'docker>=6.1.0; python_version>"3.6"',
+          # If Python is too old, install the latest version we can and pin
+          # urllib3 ourselves.
+          'docker~=5.0; python_version<"3.7"',
+          'urllib3~=1.26; python_version<"3.7"',
+          'setuptools',
+      ],
       test_suite='tests',
-      zip_safe=False,
-      cmdclass={'egg_info': tagger},
-      )
+      zip_safe=False
+)