tox: fix too much test running in specific envs
When running a specific env such as e.g. py27-postgresql-file, the lines in the global commands variable starting with "py27:" also matches, which means we ended up running the global test suite too! This refactor the code a bit so we always call run-tests.sh with just some environment variable set using `setenv'. Change-Id: Icb2879f383c1d0a09a1cd1fce1cbadfa1207c6c9
This commit is contained in:
18
run-tests.sh
18
run-tests.sh
@@ -1,14 +1,16 @@
|
||||
#!/bin/bash -x
|
||||
set -e
|
||||
EXIT_CODE=0
|
||||
INDEXER_DRIVERS="$1"
|
||||
shift
|
||||
STORAGE_DRIVERS="$1"
|
||||
shift
|
||||
for storage in $STORAGE_DRIVERS
|
||||
GNOCCHI_TEST_STORAGE_DRIVERS=${GNOCCHI_TEST_STORAGE_DRIVERS:-file}
|
||||
GNOCCHI_TEST_INDEXER_DRIVERS=${GNOCCHI_TEST_INDEXER_DRIVERS:-postgresql}
|
||||
for storage in ${GNOCCHI_TEST_STORAGE_DRIVERS}
|
||||
do
|
||||
for indexer in $INDEXER_DRIVERS
|
||||
for indexer in ${GNOCCHI_TEST_INDEXER_DRIVERS}
|
||||
do
|
||||
GNOCCHI_TEST_STORAGE_DRIVER=$storage ./setup-${indexer}-tests.sh ./tools/pretty_tox.sh $*
|
||||
storage_setup_script=./setup-${storage}-tests.sh
|
||||
if [ ! -x "$storage_setup_script" ]
|
||||
then
|
||||
unset storage_setup_script
|
||||
fi
|
||||
GNOCCHI_TEST_STORAGE_DRIVER=$storage ./setup-${indexer}-tests.sh "${storage_setup_script}" ./tools/pretty_tox.sh $*
|
||||
done
|
||||
done
|
||||
|
||||
28
tox.ini
28
tox.ini
@@ -5,23 +5,23 @@ envlist = py{27,34},py{27,34}-{postgresql,mysql}-{file,swift,ceph,influxdb},pep8
|
||||
[testenv]
|
||||
usedevelop = True
|
||||
sitepackages = False
|
||||
passenv = LANG OS_TEST_TIMEOUT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE
|
||||
passenv = LANG OS_TEST_TIMEOUT OS_STDOUT_CAPTURE OS_STDERR_CAPTURE OS_LOG_CAPTURE GNOCCHI_TEST_*
|
||||
deps = -r{toxinidir}/requirements.txt
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands =
|
||||
py{27,34}-postgresql-{file,swift,ceph}: {toxinidir}/setup-postgresql-tests.sh {toxinidir}/tools/pretty_tox.sh '{posargs}'
|
||||
py{27,34}-mysql-{file,swift,ceph}: {toxinidir}/setup-mysql-tests.sh {toxinidir}/tools/pretty_tox.sh '{posargs}'
|
||||
py{27,34}-postgresql-influxdb: {toxinidir}/setup-postgresql-tests.sh {toxinidir}/setup-influxdb-tests.sh {toxinidir}/tools/pretty_tox.sh '{posargs}'
|
||||
py{27,34}-mysql-influxdb: {toxinidir}/setup-mysql-tests.sh {toxinidir}/setup-influxdb-tests.sh {toxinidir}/tools/pretty_tox.sh '{posargs}'
|
||||
py{27,34}: doc8 --ignore-path doc/source/rest.rst doc/source
|
||||
py{27,34}: {toxinidir}/run-tests.sh "postgresql mysql" "file swift ceph" {posargs}
|
||||
py{27,34}: {toxinidir}/generate-config-file.sh
|
||||
|
||||
setenv =
|
||||
py{27,34}-{postgresql,mysql}-file: GNOCCHI_TEST_STORAGE_DRIVER=file
|
||||
py{27,34}-{postgresql,mysql}-swift: GNOCCHI_TEST_STORAGE_DRIVER=swift
|
||||
py{27,34}-{postgresql,mysql}-ceph: GNOCCHI_TEST_STORAGE_DRIVER=ceph
|
||||
py{27,34}-{postgresql,mysql}-influxdb: GNOCCHI_TEST_STORAGE_DRIVER=influxdb
|
||||
GNOCCHI_TEST_STORAGE_DRIVERS=file swift ceph
|
||||
GNOCCHI_TEST_INDEXER_DRIVERS=postgresql mysql
|
||||
py{27,34}-{postgresql,mysql}-file: GNOCCHI_TEST_STORAGE_DRIVERS=file
|
||||
py{27,34}-{postgresql,mysql}-swift: GNOCCHI_TEST_STORAGE_DRIVERS=swift
|
||||
py{27,34}-{postgresql,mysql}-ceph: GNOCCHI_TEST_STORAGE_DRIVERS=ceph
|
||||
py{27,34}-{postgresql,mysql}-influxdb: GNOCCHI_TEST_STORAGE_DRIVERS=influxdb
|
||||
py{27,34}-postgresql-{file,swift,ceph,influxdb}: GNOCCHI_TEST_INDEXER_DRIVERS=postgresql
|
||||
py{27,34}-mysql-{file,swift,ceph,influxdb}: GNOCCHI_TEST_INDEXER_DRIVERS=mysql
|
||||
|
||||
commands =
|
||||
doc8 --ignore-path doc/source/rest.rst doc/source
|
||||
{toxinidir}/generate-config-file.sh
|
||||
{toxinidir}/run-tests.sh {posargs}
|
||||
|
||||
[testenv:bashate]
|
||||
deps = bashate
|
||||
|
||||
Reference in New Issue
Block a user