dda9aa730b
If you run the py27 tox tests then attempt to run the py34 tests, the following error will occur: py34 runtests: commands[0] | ostestr --blacklist_file=blacklist-py3.txt db type could not be determined running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --list The test run didn't actually run any tests This happens because the apparently the times.dbm file generated by py27 is not compatible with py34. The converse is not true though - if you run py34 first, py27 will work. The work-around is to delete the file, which is what is now done before running every tox test. Once the bug has been fixed, the work-around can be removed. This was originally noticed in python-troveclient, however it also manifests in the Trove project. coverage.xml was also added to the .gitignore file as it was appearing in the git list of modified files. Change-Id: I312b3879c764b7b803d35e0bb62f0f47291f6693 Closes-Bug: #1565928
108 lines
3.8 KiB
INI
108 lines
3.8 KiB
INI
[tox]
|
|
envlist = py34,py27,pep8,checkbuild,checklinks
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
usedevelop = True
|
|
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -U {opts} {packages}
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = find ./trove -type f -name "*.pyc" -delete
|
|
{envpython} run_tests.py
|
|
python setup.py testr --slowest
|
|
{envpython} generate_examples.py
|
|
whitelist_externals = bash
|
|
find
|
|
|
|
[tox:jenkins]
|
|
sitepackages = True
|
|
|
|
[testenv:pep8]
|
|
commands =
|
|
flake8
|
|
# Check that .po and .pot files are valid:
|
|
bash -c "find trove -type f -regex '.*\.pot?' -print0 | \
|
|
xargs -0 -n 1 msgfmt --check-format -o /dev/null"
|
|
|
|
[testenv:py34]
|
|
commands = rm -f .testrepository/times.dbm
|
|
ostestr --blacklist_file=blacklist-py3.txt --serial
|
|
whitelist_externals = rm
|
|
|
|
|
|
[testenv:debug]
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[testenv:cover]
|
|
basepython = python2.7
|
|
commands =
|
|
coverage erase
|
|
python setup.py testr --coverage
|
|
coverage run -a run_tests.py
|
|
coverage html
|
|
coverage xml
|
|
coverage report
|
|
|
|
|
|
[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 venv 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}
|
|
commands = {posargs}
|
|
|
|
[flake8]
|
|
show-source = True
|
|
# H301 is ignored on purpose.
|
|
# The rest of the ignores are TODOs.
|
|
ignore = F821,H237,H238,H301,H404,H405,H501
|
|
builtins = _
|
|
exclude=.venv,.tox,.git,dist,doc,openstack,*egg,tools,etc,build,*.po,*.pot
|
|
filename=*.py,trove-*
|
|
|
|
[testenv:checklinks]
|
|
commands = openstack-doc-test --check-links {posargs}
|
|
|
|
[testenv:checkbuild]
|
|
# NOTE(pmalik) The setting of the install_command in this location
|
|
# is only required because currently infra does not actually
|
|
# support constraints files for the publishdocs 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}
|
|
commands =
|
|
openstack-doc-test --check-niceness --check-syntax --check-deletions {posargs}
|
|
openstack-doc-test --check-build {posargs}
|
|
|
|
[testenv:publishdocs]
|
|
# 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 publishdocs 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}
|
|
commands = openstack-doc-test --check-build --publish --force
|
|
|
|
[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 release notes 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}
|
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
|
|
|
[testenv:bandit]
|
|
commands = bandit -r trove -n5 -x tests
|
|
|
|
[testenv:install-guide]
|
|
# NOTE(jaegerandi): this target does not use constraints because
|
|
# upstream infra does not yet support it. Once that's fixed, we can
|
|
# drop the install_command.
|
|
install_command = pip install -U --force-reinstall {opts} {packages}
|
|
commands = sphinx-build -a -E -W -d install-guide/build/doctrees -b html install-guide/source install-guide/build/html
|