c351e66399
At the time, Heat only has grenade singlenode gate job. This patch set will add topology flag to Heat job template, so with just single template we have 2 jobs (singlenode/multinode) for upgrade testing. Partials-Implements: blueprint heat-rolling-upgrades Change-Id: I1e00afa4ecd7ecdb4cc2a39620d54b69b68d124e
242 lines
8.3 KiB
YAML
242 lines
8.3 KiB
YAML
- job:
|
|
name: gate-heat-templates-dsvm
|
|
node: ubuntu-xenial
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 125
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- local_conf:
|
|
conf: |
|
|
[[local|localrc]]
|
|
enable_plugin heat git://git.openstack.org/openstack/heat
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=0
|
|
export DEVSTACK_GATE_EXERCISES=0
|
|
|
|
function post_test_hook {
|
|
cd $BASE/new/heat-templates/tools
|
|
./post_test_hook.sh
|
|
}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-heat-dsvm-functional-{engine}-{datastore}-{lbaasversion}{special}-{node}{suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 130
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
services=rabbit,tempest,mysql,dstat,key
|
|
services+=,n-api,n-api-meta,n-cpu,n-cond,n-sch,n-crt
|
|
|
|
# placement services mandatory for nova from ocata
|
|
if [[ "stable/newton" != $ZUUL_BRANCH ]]; then
|
|
services+=,placement-api,placement-client
|
|
fi
|
|
|
|
services+=,g-api,g-reg
|
|
services+=,c-sch,c-api,c-vol,c-bak
|
|
services+=,q-svc,q-dhcp,q-meta,q-agt,q-l3
|
|
|
|
if [ "{special}" == "-py35" ] ; then
|
|
export DEVSTACK_GATE_USE_PYTHON3=True
|
|
# Swift does not work so skip s-* for python3x for now
|
|
else
|
|
export DEVSTACK_GATE_USE_PYTHON3=False
|
|
services+=,s-proxy,s-object,s-container,s-account
|
|
fi
|
|
|
|
if [[ ! "stable/newton stable/ocata" =~ $ZUUL_BRANCH ]]; then
|
|
services+=,q-trunk
|
|
fi
|
|
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
|
|
export DEVSTACK_GATE_EXERCISES=0
|
|
export DEVSTACK_GATE_INSTALL_TESTONLY=1
|
|
export DEVSTACK_PROJECT_FROM_GIT=python-heatclient
|
|
export KEEP_LOCALRC=1
|
|
export PROJECTS="openstack/ceilometer $PROJECTS"
|
|
export PROJECTS="openstack/aodh $PROJECTS"
|
|
export PROJECTS="openstack/zaqar $PROJECTS"
|
|
export PROJECTS="openstack/python-zaqarclient $PROJECTS"
|
|
export PROJECTS="openstack/neutron $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ceilometer git://git.openstack.org/openstack/ceilometer"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin aodh git://git.openstack.org/openstack/aodh"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin zaqar git://git.openstack.org/openstack/zaqar"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin neutron git://git.openstack.org/openstack/neutron"
|
|
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin heat git://git.openstack.org/openstack/heat"
|
|
|
|
if [ "{lbaasversion}" = "lbaasv2" ]; then
|
|
# Enable LBaaS V2 plugin
|
|
export PROJECTS="openstack/neutron-lbaas $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin neutron-lbaas https://git.openstack.org/openstack/neutron-lbaas"
|
|
# enabling lbaas plugin does not enable the lbaasv2 service, explicitly enable it
|
|
services+=,q-lbaasv2
|
|
export PROJECTS="openstack/barbican $PROJECTS"
|
|
export PROJECTS="openstack/python-barbicanclient $PROJECTS"
|
|
export PROJECTS="openstack/barbican-tempest-plugin $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin barbican https://git.openstack.org/openstack/barbican"
|
|
# the lbaas v2 driver choice is in the gate pre test hook
|
|
else
|
|
services+=,q-lbaas
|
|
fi
|
|
|
|
export OVERRIDE_ENABLED_SERVICES=$services
|
|
|
|
if [ "{datastore}" == "postgres" ] ; then
|
|
export DEVSTACK_GATE_POSTGRES=1
|
|
fi
|
|
|
|
if [ "{engine}" == "orig" ] ; then
|
|
export DISABLE_CONVERGENCE=true
|
|
fi
|
|
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
if [ "{special}" == "-identity-v3-only" ] ; then
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_IDENTITY_V2=False"
|
|
fi
|
|
if [ "{special}" == "-non-apache" ] ; then
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"HEAT_USE_MOD_WSGI=False"
|
|
fi
|
|
if [ "{special}" == "-amqp1" ] ; then
|
|
export PROJECTS="openstack/devstack-plugin-amqp1 $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"export AMQP1_SERVICE=qpid-hybrid"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin devstack-plugin-amqp1 git://git.openstack.org/openstack/devstack-plugin-amqp1"
|
|
export DEVSTACK_PROJECT_FROM_GIT="oslo.messaging,$DEVSTACK_PROJECT_FROM_GIT"
|
|
fi
|
|
function pre_test_hook {{
|
|
cd /opt/stack/new/heat/heat_integrationtests
|
|
source ./pre_test_hook.sh
|
|
}}
|
|
export -f pre_test_hook
|
|
|
|
function post_test_hook {{
|
|
cd /opt/stack/new/heat/heat_integrationtests
|
|
source ./post_test_hook.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
|
|
- job-template:
|
|
name: '{pipeline}-heatclient-dsvm-functional-{node}{suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 70
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- local_conf:
|
|
conf: |
|
|
[[local|localrc]]
|
|
enable_plugin heat git://git.openstack.org/openstack/heat
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
export DEVSTACK_PROJECT_FROM_GIT=python-heatclient
|
|
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
function post_test_hook {{
|
|
# Configure and run functional tests
|
|
$BASE/new/python-heatclient/heatclient/tests/functional/hooks/post_test_hook.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- test-results
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
|
|
- job-template:
|
|
name: '{pipeline}-grenade-dsvm-heat{topology}-{node-release}{suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 130
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- local_conf:
|
|
conf: |
|
|
[[local|localrc]]
|
|
enable_plugin heat git://git.openstack.org/openstack/heat
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack-dev/grenade $PROJECTS"
|
|
export PYTHONUNBUFFERED=true
|
|
export GRENADE_PLUGINRC="enable_grenade_plugin heat https://git.openstack.org/openstack/heat"
|
|
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
|
|
export DEVSTACK_GATE_GRENADE=pullup
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
export TOPOLOGY={topology}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
# Default topology is all-in-one (aio)
|
|
if [ "$TOPOLOGY" == "-multinode" ] ; then
|
|
export DEVSTACK_GATE_TOPOLOGY="multinode"
|
|
fi
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log |