810ece602c
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: I543f07685bf3b2cb89e68ea4fb4692552a74415c
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
|