067b6622f3
All OpenStack Charms now contain identical tox.ini files, not to be modified or made unique within each charm repo. This is to ensure consistency across charm repos in tox target naming, approach and purpose, also giving the charm dev and test experience additional consistency. Also create empty dirs with .keep files where necessary. Some classic charms have actions and/or lib dirs, and some do not. In all classic charms, flake will now check those dirs to ensure lint coverage of existing or future content. Change-Id: Ibc97c71eba9a64969fc3cfe5fc6ddd2c867cc0b8
81 lines
2.4 KiB
INI
81 lines
2.4 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
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
setenv = VIRTUAL_ENV={envdir}
|
|
PYTHONHASHSEED=0
|
|
CHARM_DIR={envdir}
|
|
AMULET_SETUP_TIMEOUT=2700
|
|
install_command =
|
|
pip install --allow-unverified python-apt {opts} {packages}
|
|
commands = ostestr {posargs}
|
|
whitelist_externals = juju
|
|
passenv = HOME TERM AMULET_*
|
|
|
|
[testenv:py27]
|
|
basepython = python2.7
|
|
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-xenial-mitaka --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
|