diff --git a/requirements-py3.txt b/requirements-py3.txt new file mode 100644 index 0000000000..13f7c39999 --- /dev/null +++ b/requirements-py3.txt @@ -0,0 +1,64 @@ +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. + +pbr>=0.11,<2.0 +# +# The greenlet package must be compiled with gcc and needs +# the Python.h headers. Make sure you install the python-dev +# package to get the right headers... +greenlet>=0.3.2 + +# < 0.8.0/0.8 does not work, see https://bugs.launchpad.net/bugs/1153983 +SQLAlchemy>=0.9.7,<=0.9.99 +anyjson>=0.3.3 +eventlet>=0.17.3 +PasteDeploy>=1.5.0 +Routes>=1.12.3,!=2.0 +WebOb>=1.2.3 +sqlalchemy-migrate>=0.9.5 +httplib2>=0.7.5 +kombu>=3.0.7 +pycrypto>=2.6 +iso8601>=0.1.9 +oslo.config>=1.11.0 # Apache-2.0 +oslo.concurrency>=1.8.0 # Apache-2.0 +oslo.context>=0.2.0 # Apache-2.0 +oslo.utils>=1.4.0 # Apache-2.0 +stevedore>=1.3.0 # Apache-2.0 +taskflow>=0.7.1 +keystonemiddleware>=1.5.0 +WSME>=0.6 +# For openstack/common/lockutils +posix_ipc + +# For Swift storage backend. +python-swiftclient>=2.2.0 + +# For VMware storage backed. +oslo.vmware>=0.11.1 # Apache-2.0 + +# For paste.util.template used in keystone.common.template +Paste + +jsonschema>=2.0.0,<3.0.0 +python-keystoneclient>=1.3.0 +pyOpenSSL>=0.11 +# Required by openstack.common libraries +six>=1.9.0 + +oslo.db>=1.7.0 # Apache-2.0 +oslo.i18n>=1.5.0 # Apache-2.0 +oslo.log>=1.0.0 # Apache-2.0 +oslo.messaging>=1.8.0 # Apache-2.0 +oslo.policy>=0.3.1 # Apache-2.0 +oslo.serialization>=1.4.0 # Apache-2.0 + +retrying>=1.2.3,!=1.3.0 # Apache-2.0 +osprofiler>=0.3.0 # Apache-2.0 + +# Glance Store +-e git+https://github.com/openstack/glance_store.git#egg=glance_store + +# Artifact repository +semantic_version>=2.3.1 diff --git a/test-requirements-py3.txt b/test-requirements-py3.txt new file mode 100644 index 0000000000..d1c5017d16 --- /dev/null +++ b/test-requirements-py3.txt @@ -0,0 +1,33 @@ +# The order of packages is significant, because pip processes them in the order +# of appearance. Changing the order has an impact on the overall integration +# process, which may cause wedges in the gate later. + +# Hacking already pins down pep8, pyflakes and flake8 +hacking>=0.10.0,<0.11 + +# For translations processing +Babel>=1.3 + +# Needed for testing +coverage>=3.6 +discover +fixtures>=0.3.14 +mox3>=0.7.0 +mock>=1.0 +sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3 +requests>=2.5.2 +testrepository>=0.0.18 +testtools>=0.9.36,!=1.2.0 +psutil>=1.1.1,<2.0.0 +oslotest>=1.5.1 # Apache-2.0 +# Optional packages that should be installed when testing +PyMySQL>=0.6.2 # MIT License +psycopg2 +pysendfile>=2.0.0 +xattr>=0.4 + +# Documentation +oslosphinx>=2.5.0 # Apache-2.0 + +# Glance catalog index +elasticsearch>=1.3.0 diff --git a/tox.ini b/tox.ini index b1308e2283..027734c37b 100644 --- a/tox.ini +++ b/tox.ini @@ -16,6 +16,33 @@ passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY [tox:jenkins] downloadcache = ~/cache/pip +[testenv:py34] +deps = -r{toxinidir}/requirements-py3.txt + -r{toxinidir}/test-requirements-py3.txt +commands = + python -m testtools.run \ + glance.tests.unit.common.test_client \ + glance.tests.unit.common.test_property_utils \ + glance.tests.unit.common.test_scripts \ + glance.tests.unit.common.test_swift_store_utils \ + glance.tests.unit.test_artifacts_plugin_loader \ + glance.tests.unit.test_auth \ + glance.tests.unit.test_cached_images \ + glance.tests.unit.test_context \ + glance.tests.unit.test_context_middleware \ + glance.tests.unit.test_domain \ + glance.tests.unit.test_domain_proxy \ + glance.tests.unit.test_gateway \ + glance.tests.unit.test_image_cache_client \ + glance.tests.unit.test_jsonpatchmixin \ + glance.tests.unit.test_manage \ + glance.tests.unit.test_notifier \ + glance.tests.unit.test_opts \ + glance.tests.unit.test_schema \ + glance.tests.unit.test_scrubber \ + glance.tests.unit.test_store_artifact \ + glance.tests.unit.test_store_location + [testenv:pep8] commands = flake8 {posargs}