From f2b6cbec9679efaae2db30c8509eeeb24fc23d70 Mon Sep 17 00:00:00 2001 From: Felipe Monteiro Date: Tue, 9 May 2017 15:35:27 +0100 Subject: [PATCH] Add py35 job to Patrole QA's Pike goals include adding a py35 gate to Patrole [0]: this patch accomplishes that goal. Only 1 py35 gate, for the Member role, is added to Patrole, because: - Member role is less permissive than admin role - admin and Member roles are already covered by the voting gates - The purpose of the py35 gate is to check for py35 compliance [0] https://etherpad.openstack.org/p/pike-qa-goals-py35 Co-Authored-By: Samantha Blanco Change-Id: Iee8163595708f042ee5a53c3d6abe8f23764d93e --- jenkins/jobs/patrole.yaml | 61 ++++++++++++++++++++++++++++++++++++++ jenkins/jobs/projects.yaml | 7 +++++ zuul/layout.yaml | 1 + 3 files changed, 69 insertions(+) diff --git a/jenkins/jobs/patrole.yaml b/jenkins/jobs/patrole.yaml index b3d6b64771..7fa26ee8b9 100644 --- a/jenkins/jobs/patrole.yaml +++ b/jenkins/jobs/patrole.yaml @@ -58,6 +58,67 @@ - devstack-logs - console-log +# Job for py35 Patrole + Tempest. Currently only tests Member role. +- job-template: + name: '{pipeline}-tempest-dsvm-patrole-py35-{rbac-role}-{node}{suffix}' + node: '{node}' + + wrappers: + - build-timeout: + timeout: 70 + - timestamps + + builders: + - print-template-name: + template-name: "{template-name}" + - link-logs + - net-info + - devstack-checkout + - local_conf: + conf: | + [[local|localrc]] + enable_plugin patrole git://git.openstack.org/openstack/patrole + - shell: | + #!/bin/bash -xe + export PYTHONUNBUFFERED=true + export DEVSTACK_GATE_USE_PYTHON3=True + + # Ensure that tempest set up is executed, but do not automatically + # execute tempest tests; they are executed in post_test_hook. + export DEVSTACK_GATE_TEMPEST=1 + export DEVSTACK_GATE_NEUTRON=1 + export DEVSTACK_GATE_TEMPEST_NOTESTS=1 + + export PROJECTS="openstack/patrole $PROJECTS" + + export BRANCH_OVERRIDE={branch-override} + if [ "$BRANCH_OVERRIDE" != "default" ] ; then + export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE + fi + + # Keep localrc to be able to set some vars in pre_test_hook + export KEEP_LOCALRC=1 + + function pre_test_hook {{ + source $BASE/new/patrole/contrib/pre_test_hook.sh \ + {rbac-role} + }} + export -f pre_test_hook + + function post_test_hook {{ + source $BASE/new/patrole/contrib/post_test_hook.sh \ + {rbac-role} + }} + 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 for Patrole + Tempest multinode environment. Tests admin and Member roles. - job-template: name: '{pipeline}-tempest-dsvm-patrole-multinode-{rbac-role}-{node-release}{suffix}' diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml index 0e9211d2fd..893ac0a247 100644 --- a/jenkins/jobs/projects.yaml +++ b/jenkins/jobs/projects.yaml @@ -10240,6 +10240,13 @@ rbac-role: - admin - member + - '{pipeline}-tempest-dsvm-patrole-py35-{rbac-role}-{node}{suffix}': + pipeline: gate + node: ubuntu-xenial + branch-override: default + suffix: '-nv' + rbac-role: + - member - '{pipeline}-tempest-dsvm-patrole-multinode-{rbac-role}-{node-release}{suffix}': pipeline: gate node-release: ubuntu-xenial diff --git a/zuul/layout.yaml b/zuul/layout.yaml index 0389bfc820..312b0e0e8b 100755 --- a/zuul/layout.yaml +++ b/zuul/layout.yaml @@ -15132,6 +15132,7 @@ projects: check: - gate-tempest-dsvm-patrole-admin-ubuntu-xenial - gate-tempest-dsvm-patrole-member-ubuntu-xenial + - gate-tempest-dsvm-patrole-py35-member-ubuntu-xenial-nv - gate-tempest-dsvm-patrole-multinode-admin-ubuntu-xenial-nv - gate-tempest-dsvm-patrole-multinode-member-ubuntu-xenial-nv gate: