42332b3eda
Unit tests should run with hash seed randomization on, to ensure code is not introduced that relies on ordered access of dicts, sets, etc. Python 3.3 enables this at runtime by default. Change-Id: I781fd850039e4817b63edaf275609c1dc47f4949
93 lines
2.7 KiB
INI
93 lines
2.7 KiB
INI
# Classic charm: ./tox.ini
|
|
# This file is managed centrally by release-tools and should not be modified
|
|
# within individual charm repos.
|
|
[tox]
|
|
envlist = pep8,py27,py35,py36
|
|
skipsdist = True
|
|
skip_missing_interpreters = True
|
|
|
|
[testenv]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
CHARM_DIR={envdir}
|
|
AMULET_SETUP_TIMEOUT=5400
|
|
install_command =
|
|
pip install {opts} {packages}
|
|
commands = ostestr {posargs}
|
|
whitelist_externals = juju
|
|
passenv = HOME TERM AMULET_* CS_API_*
|
|
|
|
[testenv:py27]
|
|
# ceph charms are Python3-only, but py27 unit test target
|
|
# is required by OpenStack Governance. Remove this shim as soon as
|
|
# permitted. http://governance.openstack.org/reference/cti/python_cti.html
|
|
whitelist_externals = true
|
|
commands = true
|
|
|
|
[testenv:py35]
|
|
basepython = python3.5
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
|
|
[testenv:py36]
|
|
basepython = python3.6
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
|
|
[testenv:pep8]
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands = flake8 {posargs} hooks unit_tests tests actions lib
|
|
charm-proof
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:func27-noop]
|
|
# DRY RUN - For Debug
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
bundletester -vl DEBUG -r json -o func-results.json --test-pattern "gate-*" -n --no-destroy
|
|
|
|
[testenv:func27]
|
|
# Charm Functional Test
|
|
# Run all gate tests which are +x (expected to always pass)
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
bundletester -vl DEBUG -r json -o func-results.json --test-pattern "gate-*" --no-destroy
|
|
|
|
[testenv:func27-smoke]
|
|
# Charm Functional Test
|
|
# Run a specific test as an Amulet smoke test (expected to always pass)
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
bundletester -vl DEBUG -r json -o func-results.json gate-basic-bionic-queens --no-destroy
|
|
|
|
[testenv:func27-dfs]
|
|
# Charm Functional Test
|
|
# Run all deploy-from-source tests which are +x (may not always pass!)
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
bundletester -vl DEBUG -r json -o func-results.json --test-pattern "dfs-*" --no-destroy
|
|
|
|
[testenv:func27-dev]
|
|
# Charm Functional Test
|
|
# Run all development test targets which are +x (may not always pass!)
|
|
basepython = python2.7
|
|
deps = -r{toxinidir}/requirements.txt
|
|
-r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
bundletester -vl DEBUG -r json -o func-results.json --test-pattern "dev-*" --no-destroy
|
|
|
|
[flake8]
|
|
ignore = E402,E226
|
|
exclude = */charmhelpers
|