From dfc4dc3a22e425d4d17c8666f00e2110ebf39ccf Mon Sep 17 00:00:00 2001 From: Adam Gandelman Date: Wed, 4 Mar 2015 15:51:04 -0800 Subject: [PATCH] Add experimental plugin based ironic+ironicclient functional jobs Adds two new experimental jobs that both setup devstack using a plugin instead of native devstack code. This is a first step in in-tree Ironic functional testing. Change-Id: I15aaa22191e16897978c4b1059119532c9043fed --- jenkins/jobs/ironic.yaml | 76 ++++++++++++++++++++++++++++++++++++++ jenkins/jobs/projects.yaml | 10 +++++ zuul/layout.yaml | 5 +++ 3 files changed, 91 insertions(+) create mode 100644 jenkins/jobs/ironic.yaml diff --git a/jenkins/jobs/ironic.yaml b/jenkins/jobs/ironic.yaml new file mode 100644 index 0000000000..a963bc8be5 --- /dev/null +++ b/jenkins/jobs/ironic.yaml @@ -0,0 +1,76 @@ +- job-template: + name: '{pipeline}-ironic-dsvm-functional{branch-designator}' + node: '{node}' + + wrappers: + - build-timeout: + timeout: 125 + - timestamps + + builders: + - link-logs + - net-info + - devstack-checkout + - shell: | + #!/bin/bash -xe + export PYTHONUNBUFFERED=true + export DEVSTACK_GATE_TIMEOUT=120 + export DEVSTACK_GATE_TEMPEST=1 + export DEVSTACK_GATE_IRONIC=1 + export DEVSTACK_GATE_NEUTRON=1 + export DEVSTACK_GATE_VIRT_DRIVER=ironic + export DEVSTACK_GATE_TEMPEST_REGEX="baremetal" + export TEMPEST_CONCURRENCY=2 + export BRANCH_OVERRIDE={branch-override} + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic" + + # No post_test_hook is needed while tests live in tempest + 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}-ironicclient-dsvm-functional{branch-designator}' + node: '{node}' + + wrappers: + - build-timeout: + timeout: 125 + - timestamps + + builders: + - link-logs + - net-info + - devstack-checkout + - shell: | + #!/bin/bash -xe + export PYTHONUNBUFFERED=true + export DEVSTACK_GATE_TIMEOUT=120 + export DEVSTACK_GATE_TEMPEST=0 + export DEVSTACK_PROJECT_FROM_GIT=python-ironicclient + export OVERRIDE_ENABLED_SERIVES=key,mysql,rabbit,ir-api,ir-cond + export BRANCH_OVERRIDE={branch-override} + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic" + + function post_test_hook {{ + source $BASE/new/devstack/openrc admin admin + (cd /opt/stack/new/python-ironicclient && ./tools/run_functional.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 diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml index ae72192c8a..d7252746e6 100755 --- a/jenkins/jobs/projects.yaml +++ b/jenkins/jobs/projects.yaml @@ -231,6 +231,11 @@ - openstack-publish-jobs - python-juno-bitrot-jobs - translation-jobs + - '{pipeline}-ironic-dsvm-functional{branch-designator}': + pipeline: check + node: 'devstack-precise || devstack-trusty' + branch-designator: '' + branch-override: default - '{pipeline}-grenade-dsvm-ironic-sideways{branch-designator}': pipeline: check node: 'devstack-precise || devstack-trusty' @@ -749,6 +754,11 @@ - pypi-jobs - 'stable-compat-jobs-{name}' - 'lib-forward-testing-{name}' + - '{pipeline}-ironicclient-dsvm-functional{branch-designator}': + pipeline: check + node: 'devstack-precise || devstack-trusty' + branch-designator: '' + branch-override: default - project: name: python-keystoneclient diff --git a/zuul/layout.yaml b/zuul/layout.yaml index 0c543ef629..9ad15bb553 100755 --- a/zuul/layout.yaml +++ b/zuul/layout.yaml @@ -1338,6 +1338,8 @@ projects: experimental: - check-grenade-dsvm-ironic - check-grenade-dsvm-partial-ironic + - check-tempest-dsvm-ironic-pxe_ipa-nv + - check-ironic-dsvm-functional - name: openstack/ironic-lib template: @@ -1856,6 +1858,8 @@ projects: - gate-tempest-dsvm-ironic-pxe_ssh post: - python-ironicclient-coverage + experimental: + - check-ironicclient-dsvm-functional - name: openstack/python-keystoneclient template: @@ -3113,6 +3117,7 @@ projects: post: - devstack-publish-docs experimental: + - check-ironic-dsvm-functional - check-neutron-dsvm-functional - check-tempest-dsvm-aiopcpu-full - check-tempest-dsvm-neutron-aiopcpu-full