add lower-constraints job

Create a tox environment for running the unit tests against the lower
bounds of the dependencies.

Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.

Add openstack-tox-lower-constraints job to the zuul configuration.

Add missing dev packages for libxml and libxslt to the bindep config
file.

See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.

Change-Id: I4a51633916661bdfa926eb231b8e482628887e90
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This commit is contained in:
Doug Hellmann 2018-03-22 17:24:13 -04:00
parent 058868a319
commit 3e766d6c0a
4 changed files with 67 additions and 0 deletions

7
.zuul.yaml Normal file
View File

@ -0,0 +1,7 @@
- project:
check:
jobs:
- openstack-tox-lower-constraints
gate:
jobs:
- openstack-tox-lower-constraints

View File

@ -7,3 +7,7 @@ python-dev [platform:dpkg]
python3-all [platform:dpkg !platform:ubuntu-precise]
python3-all-dev [platform:dpkg !platform:ubuntu-precise]
python3-devel [platform:fedora]
libxml2-dev [platform:dpkg]
libxslt1-dev [platform:dpkg]
libxml2-devel [platform:rpm]
libxslt-devel [platform:rpm]

46
lower-constraints.txt Normal file
View File

@ -0,0 +1,46 @@
alabaster==0.7.10
astroid==1.6.2
Babel==2.3.4
bashate==0.5.1
chardet==3.0.4
demjson==2.2.2
doc8==0.6.0
docutils==0.11
dulwich==0.15.0
extras==1.0.0
fixtures==3.0.0
flake8==2.5.5
hacking==0.12.0
imagesize==0.7.1
iso8601==0.1.11
isort==4.3.4
Jinja2==2.10
lazy-object-proxy==1.3.1
linecache2==1.0.0
lxml==3.4.1
MarkupSafe==1.0
mccabe==0.2.1
mock==2.0.0
openstackdocstheme==1.18.1
pbr==2.0.0
pep8==1.5.7
pyflakes==0.8.1
Pygments==2.2.0
pylint==1.7.1
python-mimeparse==1.6.0
python-subunit==1.0.0
pytz==2013.6
PyYAML==3.12
reno==2.5.0
requests==2.14.2
restructuredtext-lint==1.1.1
six==1.10.0
snowballstemmer==1.2.1
Sphinx==1.6.5
sphinxcontrib-websupport==1.0.1
stevedore==1.20.0
testrepository==0.0.18
testtools==2.2.0
traceback2==1.4.0
unittest2==1.1.0
wrapt==1.7.0

10
tox.ini
View File

@ -55,3 +55,13 @@ exclude=.venv,.git,.tox,dist,*lib/python*,*egg,build,doc/source/conf.py
# 28 is currently the most complex thing we have
max-complexity=29
ignore = H101
[testenv:lower-constraints]
basepython = python3
# Install also sitemap scraping tool, not installed by default
# therefore not in requirements file
deps =
scrapy>=1.0.0
-c{toxinidir}/lower-constraints.txt
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt