Use constraints for all the things
This configures tox to use upper-constraints for everything, except environments used for post jobs (as constraints aren't supported there yet). This also doesn't enable constraints for our image builds, as it isn't possible to pass an environment variable into the Dockerfile to allow folks to choose their own constraints file (and we don't want to force people to rely on git.o.o for building images). Change-Id: I285855c6386f59e9dd352473aa28463109818c90
This commit is contained in:
parent
86ca19fae2
commit
4e35b0ee64
@ -39,6 +39,7 @@ RUN apt-mark manual python-minimal
|
||||
# Install requirements separately, because pip understands a git+https url
|
||||
# while setuptools doesn't
|
||||
RUN proxy.sh pip install --upgrade pip
|
||||
# TODO(jroll) use upper-constraints here
|
||||
RUN proxy.sh pip install --no-cache-dir -r /tmp/ironic-python-agent/requirements.txt
|
||||
|
||||
# This will succeed because all the dependencies were installed previously
|
||||
|
20
tox.ini
20
tox.ini
@ -5,7 +5,7 @@ envlist = py34,py27,func,pep8
|
||||
|
||||
[testenv]
|
||||
usedevelop = True
|
||||
install_command = pip install --allow-external -U {opts} {packages}
|
||||
install_command = pip install -U -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
|
||||
setenv =
|
||||
VIRTUAL_ENV={envdir}
|
||||
OS_TEST_PATH=./ironic_python_agent/tests/unit
|
||||
@ -29,11 +29,23 @@ commands =
|
||||
doc8 doc/source README.rst
|
||||
|
||||
[testenv:cover]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the cover job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
setenv = VIRTUAL_ENV={envdir}
|
||||
commands =
|
||||
python setup.py test --coverage --coverage-package-name ironic_python_agent {posargs}
|
||||
|
||||
[testenv:venv]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the docs job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
setenv = PYTHONHASHSEED=0
|
||||
commands = {posargs:}
|
||||
|
||||
@ -49,6 +61,12 @@ commands =
|
||||
python setup.py build_sphinx
|
||||
|
||||
[testenv:releasenotes]
|
||||
# NOTE(amrith) The setting of the install_command in this location
|
||||
# is only required because currently infra does not actually
|
||||
# support constraints files for the releasenotes job, and while
|
||||
# the environment variable UPPER_CONSTRAINTS_FILE is set, there's
|
||||
# no file there. It can be removed when infra changes this.
|
||||
install_command = pip install -U {opts} {packages}
|
||||
envdir = {toxworkdir}/venv
|
||||
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user