- job-template: name: 'gate-rally-install-{node}' node: '{node}' builders: - link-logs - gerrit-git-prep - shell: "tests/ci/test_install.sh" publishers: - console-log - publisher: name: rally-verify publishers: - scp: site: 'static.openstack.org' files: - target: 'logs/$LOG_PATH' source: 'rally-verify/**' keep-hierarchy: true copy-after-failure: true - target: 'logs/$LOG_PATH' source: 'rally-verify/extra/index.html' keep-heirarchy: false copy-after-failure: true - publisher: name: rally-plot publishers: - scp: site: 'static.openstack.org' files: - target: 'logs/$LOG_PATH' source: 'rally-plot/**' keep-hierarchy: true copy-after-failure: true - target: 'logs/$LOG_PATH' source: 'rally-plot/extra/index.html' keep-heirarchy: false copy-after-failure: true - builder: name: devstack-rally-gate builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/ceilometer $PROJECTS" export PROJECTS="openstack/aodh $PROJECTS" export CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler export DEVSTACK_GATE_NEUTRON={neutron} export DEVSTACK_GATE_IRONIC={ironic} export DEVSTACK_GATE_ZAQAR={zaqar} export DEVSTACK_GATE_TEMPEST_LARGE_OPS={large_ops} export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export DEVSTACK_GATE_USE_KEYSTONE_V2API={keystone_use_v2api} if [ $DEVSTACK_GATE_USE_KEYSTONE_V2API -eq 1 ]; then export IDENTITY_API_VERSION=2.0 else export IDENTITY_API_VERSION=3 fi DEVSTACK_LOCAL_CONFIG="enable_plugin ceilometer git://git.openstack.org/openstack/ceilometer" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin aodh git://git.openstack.org/openstack/aodh" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin rally git://git.openstack.org/openstack/rally" DEVSTACK_LOCAL_CONFIG+=$'\n'"CINDER_ENABLE_V1_API=True" ENABLED_SERVICES=sahara,key,horizon, ENABLED_SERVICES+=cinder,c-api,c-vol,c-sch,c-bak, ENABLED_SERVICES+=g-api,g-reg, ENABLED_SERVICES+=heat,h-api,h-api-cfn,h-api-cw,h-eng, ENABLED_SERVICES+=n-api,n-crt,n-cpu,n-sch,n-cond, # n-obj has been removed from mitaka if [[ "stable/kilo stable/liberty" =~ $ZUUL_BRANCH ]]; then ENABLED_SERVICES+=n-obj, fi ENABLED_SERVICES+=s-proxy,s-account,s-container,s-object, ENABLED_SERVICES+=ceilometer-acompute,ceilometer-acentral,ceilometer-api, ENABLED_SERVICES+=ceilometer-anotification,ceilometer-collector, ENABLED_SERVICES+=aodh-api,aodh-evaluator,aodh-notifier, if [ $DEVSTACK_GATE_NEUTRON -ne 1 ]; then ENABLED_SERVICES+=n-net,n-api-meta, fi if [ $DEVSTACK_GATE_IRONIC -ne 0 ]; then ENABLED_SERVICES+=ironic,ir-api,ir-cond, fi if [ $DEVSTACK_GATE_ZAQAR -ne 0 ]; then export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin zaqar git://git.openstack.org/openstack/zaqar" export PROJECTS="openstack/python-zaqarclient $PROJECTS" fi export ENABLED_SERVICES export DEVSTACK_LOCAL_CONFIG function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.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 - builder: name: devstack-designate-rally-gate builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/ceilometer $PROJECTS" export PROJECTS="openstack/aodh $PROJECTS" export PROJECTS="openstack/designate $PROJECTS" export PROJECTS="openstack/python-designateclient $PROJECTS" export PROJECTS="openstack/designate-dashboard $PROJECTS" export CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler export DEVSTACK_GATE_NEUTRON={neutron} export DEVSTACK_GATE_TEMPEST_LARGE_OPS={large_ops} export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export IDENTITY_API_VERSION=3 ENABLED_SERVICES=ceilometer-acompute,ceilometer-acentral,ceilometer-api, ENABLED_SERVICES+=ceilometer-anotification,ceilometer-collector, ENABLED_SERVICES+=aodh-api,aodh-alarm-evaluator,aodh-alarm-notifier, ENABLED_SERVICES+=designate,designate-api,designate-central,designate-sink,designate-mdns, export ENABLED_SERVICES DEVSTACK_LOCAL_CONFIG="enable_plugin ceilometer git://git.openstack.org/openstack/ceilometer" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin aodh git://git.openstack.org/openstack/aodh" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin rally git://git.openstack.org/openstack/rally" export DEVSTACK_LOCAL_CONFIG if [[ "stable/kilo stable/liberty" =~ $ZUUL_BRANCH ]]; then # Kilo/Liberty version uses the older 'hooks' approach to adding # the Designate plugin function gate_hook {{ cd /opt/stack/new/designate/contrib/devstack ./gate_hook.sh }} export -f gate_hook function pre_test_hook {{ cd /opt/stack/new/designate/contrib/devstack ./pre_test_hook.sh }} export -f pre_test_hook function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.sh }} export -f post_test_hook else # Otherwise, enable the Designate devstack plugin. DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin designate git://git.openstack.org/openstack/designate" export DEVSTACK_LOCAL_CONFIG function gate_hook {{ cd /opt/stack/new/designate/devstack/gate ./gate_hook.sh }} export -f gate_hook function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.sh }} export -f post_test_hook fi cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh - builder: name: devstack-manila-rally-gate-multibackend builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/python-manilaclient openstack/rally $PROJECTS" export IDENTITY_API_VERSION=3 export DEVSTACK_GATE_NEUTRON=1 export RALLY_SCENARIO={scenario} export DEVSTACK_LOCAL_CONFIG="enable_plugin manila git://git.openstack.org/openstack/manila" # Keep localrc to be able to set some vars in pre_test_hook export KEEP_LOCALRC=1 export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin rally git://git.openstack.org/openstack/rally" function pre_test_hook {{ # Install manila-devstack integration # 'dhss' means 'drivers handle share servers' source $BASE/new/manila/contrib/ci/pre_test_hook.sh {dhss} }} export -f pre_test_hook function post_test_hook {{ source $BASE/new/manila/contrib/ci/common.sh manila_wait_for_drivers_init /etc/manila/manila.conf $BASE/new/rally/tests/ci/rally-gate.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 - job: name: 'gate-rally-dsvm-manila-multibackend' node: devstack-trusty wrappers: - build-timeout: timeout: 70 - timestamps builders: - devstack-manila-rally-gate-multibackend: scenario: 'rally-manila' dhss: '1' publishers: - devstack-logs - console-log - rally-plot - job: name: 'gate-rally-dsvm-manila-multibackend-no-ss' node: devstack-trusty wrappers: - build-timeout: timeout: 70 - timestamps builders: - devstack-manila-rally-gate-multibackend: scenario: 'rally-manila-no-ss' dhss: '0' publishers: - devstack-logs - console-log - rally-plot - builder: name: devstack-murano-rally-gate builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/murano $PROJECTS" export PROJECTS="openstack/murano-dashboard $PROJECTS" export PROJECTS="openstack/python-muranoclient $PROJECTS" export DEVSTACK_GATE_NEUTRON={neutron} export DEVSTACK_GATE_TEMPEST_LARGE_OPS={large_ops} export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export IDENTITY_API_VERSION=3 ENABLED_SERVICES=h-api,h-api-cfn,h-api-cw,h-eng,heat, export DEVSTACK_LOCAL_CONFIG="enable_plugin rally git://git.openstack.org/openstack/rally" if [[ $ZUUL_BRANCH =~ "kilo" ]]; then # Kilo version uses 'hooks' approach that requires explicit # enabling of services. # todo(freerunner): Remove this ugly workaround when kilo support will be # todo(freerunner): dropped off. ENABLED_SERVICES+=,murano,murano-api,murano-engine else # Enable murano devstack plugin. Provided repo should be cloned by zuul before devstack run # and below provided link should not be used. export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin murano git://git.openstack.org/openstack/murano" fi export ENABLED_SERVICES function pre_test_hook {{ # Install murano-devstack integration cd /opt/stack/new/murano/functionaltests ./pre_test_hook.sh }} export -f pre_test_hook function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.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 - builder: name: devstack-mistral-rally-gate builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/mistral $PROJECTS" export PROJECTS="openstack/mistral-dashboard $PROJECTS" export PROJECTS="openstack/python-mistralclient $PROJECTS" export DEVSTACK_GATE_NEUTRON={neutron} export DEVSTACK_GATE_TEMPEST_LARGE_OPS={large_ops} export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export IDENTITY_API_VERSION=3 export ENABLED_SERVICES=h-api,h-api-cfn,h-api-cw,h-eng,heat, export DEVSTACK_LOCAL_CONFIG="enable_plugin rally git://git.openstack.org/openstack/rally" export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin mistral https://git.openstack.org/openstack/mistral" function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.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 - job-template: name: 'gate-rally-dsvm-ironic-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{name}-ironic' neutron: '1' ironic: '1' zaqar: '0' large_ops: '0' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - builder: name: devstack-cue-rally-gate builders: - link-logs - net-info - devstack-checkout - shell: | #!/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/cue openstack/python-cueclient openstack/cue-dashboard $PROJECTS" export PYTHONUNBUFFERED=true export DEVSTACK_GATE_TEMPEST=0 export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export DEVSTACK_LOCAL_CONFIG="enable_plugin rally git://git.openstack.org/openstack/rally" export IDENTITY_API_VERSION=3 function pre_test_hook {{ # Install cue-devstack integration cd /opt/stack/new/cue/tests ./pre_test_hook.sh {broker} }} export -f pre_test_hook function gate_hook {{ cd /opt/stack/new/cue/tests ./gate_hook.sh {broker} }} export -f gate_hook function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.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 - job-template: name: 'gate-rally-dsvm-murano-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-murano-rally-gate: scenario: '{name}-murano' neutron: '1' large_ops: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-mistral-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-mistral-rally-gate: scenario: '{name}-mistral' neutron: '0' large_ops: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-cue-{broker}' node: devstack-trusty wrappers: - build-timeout: timeout: 110 - timestamps builders: - devstack-cue-rally-gate: scenario: '{broker}-scenarios-gate' broker: '{broker}' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-designate-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-designate-rally-gate: scenario: '{name}-designate' neutron: '0' large_ops: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{name}' ironic: '0' neutron: '0' zaqar: '0' large_ops: '0' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-neutron-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{name}-neutron' ironic: '0' neutron: '1' zaqar: '0' large_ops: '0' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-fakevirt-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{name}-fakevirt' ironic: '0' neutron: '0' zaqar: '0' large_ops: '10' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-zaqar-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{name}-zaqar' ironic: '0' neutron: '0' zaqar: '1' large_ops: '0' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-rally-dsvm-rally-{service}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-rally-gate: scenario: '{service}' ironic: '0' neutron: '{neutron}' zaqar: '0' large_ops: '0' keystone_use_v2api: '0' publishers: - devstack-logs - console-log - rally-plot - job-template: name: 'gate-{name}-integrate-dsvm-rally' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-{name}-rally-gate publishers: - devstack-logs - console-log - rally-plot - job: name: 'gate-rally-dsvm-cli' node: devstack-trusty wrappers: - build-timeout: timeout: 65 - timestamps builders: - link-logs - devstack-checkout - shell: | #/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export DEVSTACK_GATE_NEUTRON=1 DEVSTACK_LOCAL_CONFIG="enable_plugin rally git://git.openstack.org/openstack/rally" DEVSTACK_LOCAL_CONFIG+=$'\n'"CINDER_ENABLE_V1_API=True" export DEVSTACK_LOCAL_CONFIG function post_test_hook { cd $BASE/new/rally sudo -H -u stack tox -ecli -v EXIT_CODE=$? cp -r $BASE/new/rally/rally-cli-output-files $WORKSPACE/ return $EXIT_CODE } 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 - scp: site: 'static.openstack.org' files: - target: 'logs/$LOG_PATH' source: 'results.html.gz' copy-after-failure: true - target: 'logs/$LOG_PATH' source: 'rally-cli-output-files/**' keep-hierarchy: true copy-after-failure: true - job-template: name: 'gate-rally-dsvm-verify-{mode}' node: devstack-trusty wrappers: - build-timeout: timeout: 125 builders: - devstack-rally-verify: mode: '{mode}' compare: '{compare}' ceilometer: '{ceilometer}' heat: '{heat}' neutron: '{neutron}' sahara: '{sahara}' publishers: - devstack-logs - console-log - rally-verify - builder: name: devstack-rally-verify builders: - link-logs - devstack-checkout - shell: | #/bin/bash -xe export PROJECTS="openstack/rally $PROJECTS" export DEVSTACK_GATE_CEILOMETER={ceilometer} export DEVSTACK_GATE_HEAT={heat} export DEVSTACK_GATE_NEUTRON={neutron} export DEVSTACK_GATE_SAHARA={sahara} export DEVSTACK_GATE_EXERCISES=0 export RALLY_DO_COMPARE={compare} export IDENTITY_API_VERSION=3 DEVSTACK_LOCAL_CONFIG=$"enable_plugin rally git://git.openstack.org/openstack/rally" DEVSTACK_LOCAL_CONFIG+=$'\n'"CINDER_ENABLE_V1_API=True" ENABLED_SERVICES=key,horizon, ENABLED_SERVICES+=cinder,c-api,c-vol,c-sch,c-bak, ENABLED_SERVICES+=g-api,g-reg, ENABLED_SERVICES+=n-api,n-crt,n-cpu,n-sch,n-cond, # n-obj has been removed from mitaka if [[ "stable/kilo stable/liberty" =~ $ZUUL_BRANCH ]]; then ENABLED_SERVICES+=n-obj, fi ENABLED_SERVICES+=s-proxy,s-account,s-container,s-object, if [ $DEVSTACK_GATE_NEUTRON -ne 1 ]; then ENABLED_SERVICES+=n-net,n-api-meta, else ENABLED_SERVICES+=q-svc,q-dhcp,q-meta,q-agt,q-l3, export DISABLED_SERVICES=n-net fi if [ $DEVSTACK_GATE_CEILOMETER -ne 0 ]; then export CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler export PROJECTS="openstack/ceilometer $PROJECTS" export PROJECTS="openstack/aodh $PROJECTS" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ceilometer git://git.openstack.org/openstack/ceilometer" DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin aodh git://git.openstack.org/openstack/aodh" ENABLED_SERVICES+=ceilometer-acompute,ceilometer-acentral,ceilometer-api, ENABLED_SERVICES+=ceilometer-anotification,ceilometer-collector, ENABLED_SERVICES+=aodh-api,aodh-evaluator,aodh-notifier, fi if [ $DEVSTACK_GATE_HEAT -ne 0 ]; then ENABLED_SERVICES+=heat,h-api,h-api-cfn,h-api-cw,h-eng, fi if [ $DEVSTACK_GATE_SAHARA -ne 0 ]; then ENABLED_SERVICES+=sahara, fi export ENABLED_SERVICES export DEVSTACK_LOCAL_CONFIG function post_test_hook {{ if [ $RALLY_DO_COMPARE -ne 0 ]; then $BASE/new/rally/tests/ci/rally_verify.py --mode '{mode}' --compare else $BASE/new/rally/tests/ci/rally_verify.py --mode '{mode}' fi }} 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 - rally-verify - builder: name: devstack-monasca-rally-gate builders: - link-logs - devstack-checkout - shell: | #!/bin/bash -xe export PYTHONUNBUFFERED=true services=key,mysql,rabbit,n-api,n-cond,n-cpu,n-crt,n-sch,g-api,g-reg,q-agt,q-dhcp,q-l3,q-lbaas,q-meta,q-svc # n-obj has been removed from mitaka if [[ "stable/kilo stable/liberty" =~ $ZUUL_BRANCH ]]; then services+=,n-obj, fi export OVERRIDE_ENABLED_SERVICES=$services export PROJECTS="openstack/rally $PROJECTS" export PROJECTS="openstack/monasca-api $PROJECTS" export PROJECTS="openstack/python-monascaclient $PROJECTS" export IDENTITY_API_VERSION=3 export DEVSTACK_GATE_NEUTRON=1 export DEVSTACK_GATE_EXERCISES=0 export RALLY_SCENARIO={scenario} export DEVSTACK_LOCAL_CONFIG="enable_plugin monasca-api git://git.openstack.org/openstack/monasca-api" export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin rally git://git.openstack.org/openstack/rally" function pre_test_hook {{ source $BASE/new/monasca-api/devstack/pre_test_hook.sh }} export -f pre_test_hook function post_test_hook {{ $BASE/new/rally/tests/ci/rally-gate.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 - job-template: name: 'gate-rally-dsvm-monasca-{name}' node: devstack-trusty wrappers: - build-timeout: timeout: 130 - timestamps builders: - devstack-monasca-rally-gate: scenario: '{name}-monasca' publishers: - devstack-logs - console-log - rally-plot - job: name: 'gate-rally-dsvm-keystone-v2api-rally' node: devstack-trusty wrappers: - build-timeout: timeout: 65 - timestamps builders: - devstack-rally-gate: scenario: 'rally-keystone-api-v2' ironic: '0' neutron: '0' zaqar: '0' large_ops: '0' keystone_use_v2api: '1' publishers: - devstack-logs - console-log - rally-plot