![Pete Vander Giessen](/assets/img/avatar_default.png)
Added build-environment to qemu (works around issue where patchelf was not finding libs). Added hack to force wrapping of all non bash apps, to work around snapd issue with multiple instances of PATH in the snap environment. Also snuck in fix for horizon build. Horizon is specified in upstream constraints now, which means that our build fails if we try to build it from source in the same part that looks at the constriants file. Misc fixes to make the tests nicer. Change-Id: I50c88878c4f9dbb07006cab899a717e334be07d0
112 lines
2.7 KiB
INI
112 lines
2.7 KiB
INI
[tox]
|
|
envlist = lint, unit, multipass
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
basepython=python3
|
|
install_command = pip install {opts} {packages}
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
setenv =
|
|
PATH = /snap/bin:{env:PATH}
|
|
passenv = HOME TERM DISTRO INTERACTIVE_DEBUG
|
|
whitelist_externals =
|
|
sudo
|
|
/snap/bin/snapcraft
|
|
commands =
|
|
{toxinidir}/tools/basic_setup.sh
|
|
flake8 {toxinidir}/tests/
|
|
{toxinidir}/tests/test_basic.py
|
|
|
|
[testenv:snap]
|
|
# Testing environment for the gerrit gate. Named 'snap' to conform to
|
|
# the requirements of the snap friendly job that we inherit from in
|
|
# .zuul.yaml.
|
|
commands =
|
|
{toxinidir}/tools/lxd_build.sh
|
|
flake8 {toxinidir}/tests/
|
|
# Specify tests in sequence, as they can't run in parallel if not
|
|
# using multipass.
|
|
{toxinidir}/tests/test_basic.py
|
|
|
|
[testenv:multipass]
|
|
# Default testing environment for a human operated machine. Builds the
|
|
# snap in a multipass instance, then runs tests in a separate multipass
|
|
# instance. This makes the fewest changes to your personal computer,
|
|
# but is heavier on system requirements. For a more lightweight test,
|
|
# use the "snap" environment above. Beware that you will wind up with
|
|
# a lot of things installed, including potentially the locally built
|
|
# version of MicroStack!
|
|
setenv =
|
|
MULTIPASS=true
|
|
|
|
commands =
|
|
{toxinidir}/tools/multipass_build.sh
|
|
flake8 {toxinidir}/tests/
|
|
{toxinidir}/tests/test_basic.py
|
|
|
|
[testenv:basic]
|
|
# Run basic tests, with default distro.
|
|
setenv =
|
|
MULTIPASS=true
|
|
|
|
[testenv:refresh]
|
|
# Verify that we can refresh MicroStack
|
|
setenv =
|
|
MULTIPASS=true
|
|
|
|
commands =
|
|
{toxinidir}/tools/basic_setup.sh
|
|
flake8 {toxinidir}/tests/
|
|
{toxinidir}/tests/test_refresh.py
|
|
|
|
[testenv:xenial]
|
|
# Run basic tests, under xenial.
|
|
setenv =
|
|
MULTIPASS=true
|
|
DISTRO=xenial
|
|
|
|
[testenv:disco]
|
|
# Run basic tests, under disco.
|
|
setenv =
|
|
MULTIPASS=true
|
|
DISTRO=disco
|
|
|
|
[testenv:eoan]
|
|
# Run basic tests, under eoan.
|
|
setenv =
|
|
MULTIPASS=true
|
|
DISTRO=eoan
|
|
|
|
[testenv:cluster]
|
|
# Test out clustering!
|
|
# Requires multipass.
|
|
setenv =
|
|
MULTIPASS=true
|
|
|
|
commands =
|
|
{toxinidir}/tools/basic_setup.sh
|
|
flake8 {toxinidir}/tests/
|
|
{toxinidir}/tests/test_cluster.py
|
|
|
|
[testenv:build]
|
|
# Just build the snap, using multipass.
|
|
setenv =
|
|
MULTIPASS=true
|
|
|
|
commands =
|
|
{toxinidir}/tools/multipass_build.sh
|
|
|
|
[testenv:lint]
|
|
commands =
|
|
flake8 {toxinidir}/tests/
|
|
flake8 {toxinidir}/tools/
|
|
flake8 {toxinidir}/tools/init/init/
|
|
flake8 {toxinidir}/tools/launch/launch/
|
|
flake8 {toxinidir}/tools/cluster/cluster/
|
|
|
|
[testenv:unit]
|
|
deps = -r{toxinidir}/tools/init/test-requirements.txt
|
|
-r{toxinidir}/tools/init/requirements.txt
|
|
commands =
|
|
stestr run --top-dir=./tools/init/ --test-path=./tools/init/tests/ {posargs}
|