# 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} PYTHONHASHSEED=0 CHARM_DIR={envdir} AMULET_SETUP_TIMEOUT=5400 install_command = pip install --allow-unverified python-apt {opts} {packages} commands = ostestr {posargs} whitelist_externals = juju passenv = HOME TERM AMULET_* CS_API_* [testenv:py27] basepython = python2.7 deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt commands = /bin/true [testenv:py36] basepython = python3 deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt [testenv:py35] basepython = python3 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-pike --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