|
@@ -4,10 +4,12 @@ from __future__ import absolute_import
|
|
|
from __future__ import unicode_literals
|
|
from __future__ import unicode_literals
|
|
|
|
|
|
|
|
import codecs
|
|
import codecs
|
|
|
|
|
+import logging
|
|
|
import os
|
|
import os
|
|
|
import re
|
|
import re
|
|
|
import sys
|
|
import sys
|
|
|
|
|
|
|
|
|
|
+import pkg_resources
|
|
|
from setuptools import find_packages
|
|
from setuptools import find_packages
|
|
|
from setuptools import setup
|
|
from setuptools import setup
|
|
|
|
|
|
|
@@ -35,7 +37,7 @@ install_requires = [
|
|
|
'requests >= 2.6.1, != 2.11.0, < 2.12',
|
|
'requests >= 2.6.1, != 2.11.0, < 2.12',
|
|
|
'texttable >= 0.8.1, < 0.9',
|
|
'texttable >= 0.8.1, < 0.9',
|
|
|
'websocket-client >= 0.32.0, < 1.0',
|
|
'websocket-client >= 0.32.0, < 1.0',
|
|
|
- 'docker >= 2.0.0, < 3.0',
|
|
|
|
|
|
|
+ 'docker >= 2.0.1, < 3.0',
|
|
|
'dockerpty >= 0.4.1, < 0.5',
|
|
'dockerpty >= 0.4.1, < 0.5',
|
|
|
'six >= 1.3.0, < 2',
|
|
'six >= 1.3.0, < 2',
|
|
|
'jsonschema >= 2.5.1, < 3',
|
|
'jsonschema >= 2.5.1, < 3',
|
|
@@ -49,7 +51,27 @@ tests_require = [
|
|
|
|
|
|
|
|
if sys.version_info[:2] < (3, 4):
|
|
if sys.version_info[:2] < (3, 4):
|
|
|
tests_require.append('mock >= 1.0.1')
|
|
tests_require.append('mock >= 1.0.1')
|
|
|
- install_requires.append('enum34 >= 1.0.4, < 2')
|
|
|
|
|
|
|
+
|
|
|
|
|
+extras_require = {
|
|
|
|
|
+ ':python_version < "3.4"': ['enum34 >= 1.0.4, < 2'],
|
|
|
|
|
+ ':python_version < "3.5"': ['backports.ssl_match_hostname >= 3.5'],
|
|
|
|
|
+ ':python_version < "3.3"': ['ipaddress >= 1.0.16'],
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+try:
|
|
|
|
|
+ if 'bdist_wheel' not in sys.argv:
|
|
|
|
|
+ for key, value in extras_require.items():
|
|
|
|
|
+ if key.startswith(':') and pkg_resources.evaluate_marker(key[1:]):
|
|
|
|
|
+ install_requires.extend(value)
|
|
|
|
|
+except Exception:
|
|
|
|
|
+ logging.getLogger(__name__).exception(
|
|
|
|
|
+ 'Failed to compute platform dependencies. All dependencies will be '
|
|
|
|
|
+ 'installed as a result.'
|
|
|
|
|
+ )
|
|
|
|
|
+ for key, value in extras_require.items():
|
|
|
|
|
+ if key.startswith(':'):
|
|
|
|
|
+ install_requires.extend(value)
|
|
|
|
|
|
|
|
|
|
|
|
|
setup(
|
|
setup(
|
|
@@ -63,6 +85,7 @@ setup(
|
|
|
include_package_data=True,
|
|
include_package_data=True,
|
|
|
test_suite='nose.collector',
|
|
test_suite='nose.collector',
|
|
|
install_requires=install_requires,
|
|
install_requires=install_requires,
|
|
|
|
|
+ extras_require=extras_require,
|
|
|
tests_require=tests_require,
|
|
tests_require=tests_require,
|
|
|
entry_points="""
|
|
entry_points="""
|
|
|
[console_scripts]
|
|
[console_scripts]
|