fadd15a001
Add a wrapper installation script that will install npm and yarn into the current virtualenv. If yarn is installed globally, the script is a no-op. If yarn is not installed globally, whenever tox thinks it needs to create or re-create a virtualenv, install nodeenv then use it to install yarn. This removes the use of the zuul-tox-py35 job because it should now just work properly with the normal job. It does not remove the job itself because it's still used in tox-py35-on-zuul. Change-Id: If360a3f0c6b3d74498f8aa063d8b1ae87daff101
75 lines
2.3 KiB
INI
75 lines
2.3 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = pep8,py35
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
OS_TEST_TIMEOUT=150
|
|
passenv = ZUUL_TEST_ROOT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE OS_LOG_DEFAULTS NODEPOOL_ZK_HOST
|
|
usedevelop = True
|
|
install_command = pip install {opts} {packages}
|
|
whitelist_externals = bash
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
python setup.py test --slowest --testr-args='{posargs}'
|
|
|
|
[nodeenv]
|
|
install_command = bash tools/pip.sh {opts} {packages}
|
|
|
|
[testenv:py35]
|
|
install_command = {[nodeenv]install_command}
|
|
|
|
[testenv:py36]
|
|
install_command = {[nodeenv]install_command}
|
|
|
|
[testenv:bindep]
|
|
# Do not install any requirements. We want this to be fast and work even if
|
|
# system dependencies are missing, since it's used to tell you what system
|
|
# dependencies are missing! This also means that bindep must be installed
|
|
# separately, outside of the requirements files.
|
|
deps = bindep
|
|
commands = bindep test
|
|
|
|
[testenv:pep8]
|
|
# --ignore-missing-imports tells mypy to not try to follow imported modules
|
|
# out of the current tree. As you might expect, we don't want to run static
|
|
# type checking on the world - just on ourselves.
|
|
commands =
|
|
flake8 {posargs}
|
|
mypy --ignore-missing-imports zuul
|
|
|
|
[testenv:cover]
|
|
install_command = {[nodeenv]install_command}
|
|
commands =
|
|
python setup.py test --coverage
|
|
|
|
[testenv:docs]
|
|
commands =
|
|
sphinx-build -W -d doc/build/doctrees -b html doc/source/ doc/build/html
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:nodepool]
|
|
setenv =
|
|
OS_TEST_PATH = ./tests/nodepool
|
|
install_command = {[nodeenv]install_command}
|
|
commands = python setup.py test --slowest --testr-args='--concurrency=1 {posargs}'
|
|
|
|
[testenv:remote]
|
|
setenv =
|
|
OS_TEST_PATH = ./tests/remote
|
|
passenv = ZUUL_TEST_ROOT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE OS_LOG_DEFAULTS ZUUL_REMOTE_IPV4 ZUUL_SSH_KEY NODEPOOL_ZK_HOST
|
|
install_command = {[nodeenv]install_command}
|
|
commands = python setup.py test --slowest --testr-args='--concurrency=1 {posargs}'
|
|
|
|
[flake8]
|
|
# These are ignored intentionally in openstack-infra projects;
|
|
# please don't submit patches that solely correct them or enable them.
|
|
ignore = E124,E125,E129,E402,E741,H,W503
|
|
show-source = True
|
|
exclude = .venv,.tox,dist,doc,build,*.egg,node_modules
|