Run functional gate jobs in a constrained environment
This patch modifies the gate hooks to run jobs with upper constraints. Change-Id: I9eb1eb8e61381e9bb45678af8a24fa88a99e2c8f
This commit is contained in:
parent
681e1ff1af
commit
fce50f3beb
@ -35,7 +35,7 @@ function generate_testr_results {
|
|||||||
|
|
||||||
if [[ "$venv" == dsvm-functional* ]] || [[ "$venv" == dsvm-fullstack* ]]
|
if [[ "$venv" == dsvm-functional* ]] || [[ "$venv" == dsvm-fullstack* ]]
|
||||||
then
|
then
|
||||||
generate_test_logs "/tmp/${venv}-logs"
|
generate_test_logs $log_dir
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,6 +43,7 @@ if [[ "$venv" == dsvm-functional* ]] || [[ "$venv" == dsvm-fullstack* ]]
|
|||||||
then
|
then
|
||||||
owner=stack
|
owner=stack
|
||||||
sudo_env=
|
sudo_env=
|
||||||
|
log_dir="/tmp/${venv}-logs"
|
||||||
elif [ "$venv" == "api" ]
|
elif [ "$venv" == "api" ]
|
||||||
then
|
then
|
||||||
owner=tempest
|
owner=tempest
|
||||||
@ -54,6 +55,10 @@ fi
|
|||||||
cd $NEUTRON_DIR
|
cd $NEUTRON_DIR
|
||||||
sudo chown -R $owner:stack $NEUTRON_DIR
|
sudo chown -R $owner:stack $NEUTRON_DIR
|
||||||
|
|
||||||
|
# NOTE(armax): this is a gate hook and we should run in a constrained env
|
||||||
|
# to avoid breakage from uncontrolled upper constraints
|
||||||
|
venv=$venv-constraints
|
||||||
|
|
||||||
# Run tests
|
# Run tests
|
||||||
echo "Running neutron $venv test suite"
|
echo "Running neutron $venv test suite"
|
||||||
set +e
|
set +e
|
||||||
|
@ -50,6 +50,11 @@ done
|
|||||||
# Default to environment variables to permit the gate_hook to override
|
# Default to environment variables to permit the gate_hook to override
|
||||||
# when sourcing.
|
# when sourcing.
|
||||||
VENV=${VENV:-dsvm-functional}
|
VENV=${VENV:-dsvm-functional}
|
||||||
|
# If executed in the gate, run in a constrained env
|
||||||
|
if [[ "$IS_GATE" == "True" ]]
|
||||||
|
then
|
||||||
|
VENV=$VENV-constraints
|
||||||
|
fi
|
||||||
DEVSTACK_PATH=${DEVSTACK_PATH:-$1}
|
DEVSTACK_PATH=${DEVSTACK_PATH:-$1}
|
||||||
PROJECT_NAME=${PROJECT_NAME:-neutron}
|
PROJECT_NAME=${PROJECT_NAME:-neutron}
|
||||||
REPO_BASE=${GATE_DEST:-$(cd $(dirname "$0")/../.. && pwd)}
|
REPO_BASE=${GATE_DEST:-$(cd $(dirname "$0")/../.. && pwd)}
|
||||||
|
29
tox.ini
29
tox.ini
@ -28,6 +28,12 @@ setenv = {[testenv]setenv}
|
|||||||
# If you are running the tests locally you should set the env variable
|
# If you are running the tests locally you should set the env variable
|
||||||
# TEMPEST_CONFIG_DIR=/opt/stack/tempest/etc
|
# TEMPEST_CONFIG_DIR=/opt/stack/tempest/etc
|
||||||
|
|
||||||
|
[testenv:api-constraints]
|
||||||
|
basepython = {[testenv:api]basepython}
|
||||||
|
install_command = {[testenv:common-constraints]install_command}
|
||||||
|
passenv = {[testenv:api]passenv}
|
||||||
|
setenv = {[testenv:api]setenv}
|
||||||
|
|
||||||
[testenv:common]
|
[testenv:common]
|
||||||
# Fake job to define environment variables shared between dsvm/non-dsvm jobs
|
# Fake job to define environment variables shared between dsvm/non-dsvm jobs
|
||||||
setenv = OS_TEST_TIMEOUT=180
|
setenv = OS_TEST_TIMEOUT=180
|
||||||
@ -53,6 +59,13 @@ deps =
|
|||||||
{[testenv]deps}
|
{[testenv]deps}
|
||||||
-r{toxinidir}/neutron/tests/functional/requirements.txt
|
-r{toxinidir}/neutron/tests/functional/requirements.txt
|
||||||
|
|
||||||
|
[testenv:functional-constraints]
|
||||||
|
basepython = {[testenv:functional]basepython}
|
||||||
|
install_command = {[testenv:common-constraints]install_command}
|
||||||
|
setenv = {[testenv:functional]setenv}
|
||||||
|
deps =
|
||||||
|
{[testenv:functional]deps}
|
||||||
|
|
||||||
[testenv:functional-py34]
|
[testenv:functional-py34]
|
||||||
basepython = python3.4
|
basepython = python3.4
|
||||||
setenv = {[testenv:functional]setenv}
|
setenv = {[testenv:functional]setenv}
|
||||||
@ -67,6 +80,14 @@ sitepackages=True
|
|||||||
deps =
|
deps =
|
||||||
{[testenv:functional]deps}
|
{[testenv:functional]deps}
|
||||||
|
|
||||||
|
[testenv:dsvm-functional-constraints]
|
||||||
|
basepython = {[testenv:dsvm-functional]basepython}
|
||||||
|
install_command = {[testenv:common-constraints]install_command}
|
||||||
|
setenv = {[testenv:dsvm-functional]setenv}
|
||||||
|
sitepackages={[testenv:dsvm-functional]sitepackages}
|
||||||
|
deps =
|
||||||
|
{[testenv:functional-constraints]deps}
|
||||||
|
|
||||||
[testenv:dsvm-functional-py34]
|
[testenv:dsvm-functional-py34]
|
||||||
basepython = python3.4
|
basepython = python3.4
|
||||||
setenv = {[testenv:dsvm-functional]setenv}
|
setenv = {[testenv:dsvm-functional]setenv}
|
||||||
@ -83,6 +104,14 @@ sitepackages=True
|
|||||||
deps =
|
deps =
|
||||||
{[testenv:functional]deps}
|
{[testenv:functional]deps}
|
||||||
|
|
||||||
|
[testenv:dsvm-fullstack-constraints]
|
||||||
|
install_command = {[testenv:common-constraints]install_command}
|
||||||
|
setenv =
|
||||||
|
{[testenv:dsvm-fullstack]setenv}
|
||||||
|
sitepackages={[testenv:dsvm-fullstack]sitepackages}
|
||||||
|
deps =
|
||||||
|
{[testenv:functional-constraints]deps}
|
||||||
|
|
||||||
[testenv:releasenotes]
|
[testenv:releasenotes]
|
||||||
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user