From f11a3a5c2fc89810f3723299e516c527b07e9098 Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Fri, 3 Jul 2015 00:44:10 +0800 Subject: [PATCH] ceph-detect-init: do not require argparse on py2.7 argparse is included in python2.7 and up, and pkg_resources is not able to find it by .egg-info. so we should not list it as "requires" if python's version is greater or equal to 2.7. Fixes: #12167 Signed-off-by: Kefu Chai --- src/ceph-detect-init/setup.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/ceph-detect-init/setup.py b/src/ceph-detect-init/setup.py index 8554d096d378..dea9637d60ad 100644 --- a/src/ceph-detect-init/setup.py +++ b/src/ceph-detect-init/setup.py @@ -19,6 +19,7 @@ # along with this program. If not, see ``. # import os +import sys from setuptools import setup from setuptools import find_packages @@ -27,6 +28,15 @@ def read(fname): f = open(path) return f.read() + +def filter_included_modules(*m): + modules = sum(m, []) + if sys.version_info[0] == 2 and sys.version_info[1] <= 6: + return modules + included_modules = set(['argparse', 'importlib', 'sysconfig']) + return list(set(modules) - included_modules) + + install_requires = read('requirements.txt').split() tests_require = read('test-requirements.txt').split() @@ -43,11 +53,9 @@ setup( keywords='ceph', url="https://git.ceph.com/?p=ceph.git;a=summary", - install_requires=[ - 'setuptools', - ] + install_requires, - - tests_require=tests_require, + install_requires=filter_included_modules(['setuptools'], + install_requires), + tests_require=filter_included_modules(tests_require), classifiers=[ 'Environment :: Console', -- 2.47.3