summaryrefslogtreecommitdiff
path: root/playbooks/devstack/functional/run.yaml
diff options
context:
space:
mode:
authorricolin <rico.lin@easystack.cn>2017-10-03 15:06:33 +0800
committerrabi <ramishra@redhat.com>2017-11-03 08:54:45 +0530
commit82665998d31567409d48536dcc15fd0f1bae0aee (patch)
tree1432a0af8e38b1dfbd5f1cfdd96521b3443d7cbd /playbooks/devstack/functional/run.yaml
parentec40f1301d10931958c8af80a7c815ce3a9ebbd0 (diff)
downloadheat-82665998d31567409d48536dcc15fd0f1bae0aee.tar.gz
Migrate functional jobs to Zuul v3
Migrate all functional jobs and gate to zuul v3. We will have to migrate all other legacy jobs too later. Migrating guideline: https://docs.openstack.org/infra/manual/zuulv3.html Change-Id: I6757ba558d2a89a6b1d1ab4694106f0b84b26d4f
Diffstat (limited to 'playbooks/devstack/functional/run.yaml')
-rw-r--r--playbooks/devstack/functional/run.yaml120
1 files changed, 120 insertions, 0 deletions
diff --git a/playbooks/devstack/functional/run.yaml b/playbooks/devstack/functional/run.yaml
new file mode 100644
index 000000000..8263f90d0
--- /dev/null
+++ b/playbooks/devstack/functional/run.yaml
@@ -0,0 +1,120 @@
+- hosts: all
+ name: Job for functional tests
+ tasks:
+
+ - name: Ensure legacy workspace directory
+ file:
+ path: '{{ ansible_user_dir }}/workspace'
+ state: directory
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ cat > clonemap.yaml << EOF
+ clonemap:
+ - name: openstack-infra/devstack-gate
+ dest: devstack-gate
+ EOF
+ /usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
+ git://git.openstack.org \
+ openstack-infra/devstack-gate
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+
+ - shell:
+ cmd: |
+ set -e
+ set -x
+ export PYTHONUNBUFFERED=true
+ services=rabbit,tempest,mysql,dstat,key
+ services+=,n-api,n-api-meta,n-cpu,n-cond,n-sch,n-crt
+
+ # TODO(ricolin) replace the usage of ZUUL_BRANCH
+ # 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 [ "{{ use_python3 }}" -eq 1 ] ; 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
+ # TODO(ricolin) replace the usage of ZUUL_BRANCH
+ 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"
+
+ # 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
+
+ export OVERRIDE_ENABLED_SERVICES=$services
+
+ if [ "{{ branch_override }}" != "default" ] ; then
+ export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
+ fi
+ if [ "{{ use_identity_v3_only }}" -eq 1 ] ; then
+ export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_IDENTITY_V2=False"
+ fi
+ if [ "{{ use_apache }}" -eq 0 ] ; then
+ export DEVSTACK_LOCAL_CONFIG+=$'\n'"HEAT_USE_MOD_WSGI=False"
+ fi
+ if [ "{{ use_amqp1 }}" -eq 1 ] ; 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_LOCAL_CONFIG+=$'\n'"export CELLSV2_SETUP=singleconductor"
+ export DEVSTACK_PROJECT_FROM_GIT="oslo.messaging,$DEVSTACK_PROJECT_FROM_GIT"
+ fi
+ export DISABLE_CONVERGENCE="{{ disable_convergence }}"
+ 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
+ executable: /bin/bash
+ chdir: '{{ ansible_user_dir }}/workspace'
+ environment: '{{ zuul | zuul_legacy_vars }}'