From a25c2c9f39889cf6551302d2439bbdaf772de921 Mon Sep 17 00:00:00 2001
From: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
Date: Fri, 15 Apr 2016 18:47:49 +0100
Subject: [PATCH] Add experimental ubuntu-xenial jobs for OpenStack-Ansible
 roles

This patch adds experimental Ubuntu Xenial jobs to all the
OpenStack-Ansible roles. The jobs are '-nv' jobs so that if
the 'ansible-role-functional-jobs-xenial' is switched from
the experimental queue to the check/gate queue then these jobs
are not affected. It keeps things more flexible.

Change-Id: I23a5dafed406436ecf4299ae269c6eabe2fa07a5
---
 jenkins/jobs/ansible-role-jobs.yaml |  1 +
 zuul/layout.yaml                    | 39 +++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+)

diff --git a/jenkins/jobs/ansible-role-jobs.yaml b/jenkins/jobs/ansible-role-jobs.yaml
index 85e739a1c2..784afc3195 100644
--- a/jenkins/jobs/ansible-role-jobs.yaml
+++ b/jenkins/jobs/ansible-role-jobs.yaml
@@ -51,6 +51,7 @@
           ostype:
             - centos-7
             - ubuntu-trusty
+            - ubuntu-xenial
           pipeline: gate
       - '{pipeline}-{name}-ansible-func-{ostype}{job-suffix}':
           job-suffix: ''
diff --git a/zuul/layout.yaml b/zuul/layout.yaml
index 503e6d8594..fb8a7cd95d 100755
--- a/zuul/layout.yaml
+++ b/zuul/layout.yaml
@@ -273,6 +273,10 @@ project-templates:
     experimental:
       - 'gate-{name}-ansible-func-ubuntu-xenial'
 
+  - name: ansible-role-functional-jobs-xenial-nv
+    experimental:
+      - 'gate-{name}-ansible-func-ubuntu-xenial-nv'
+
   - name: bindep-fallback
     check:
       - gate-{name}-bindep-fallback-centos-7
@@ -8011,6 +8015,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-galera_client
     template:
@@ -8019,6 +8024,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-galera_server
     template:
@@ -8027,6 +8033,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-ironic
     template:
@@ -8035,6 +8042,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-lxc_container_create
     template:
@@ -8043,6 +8051,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-lxc_hosts
     template:
@@ -8051,6 +8060,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-memcached_server
     template:
@@ -8059,6 +8069,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-openstack_hosts
     template:
@@ -8067,6 +8078,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-openstack_openrc
     template:
@@ -8075,6 +8087,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_aodh
     template:
@@ -8083,6 +8096,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_barbican
     template:
@@ -8091,6 +8105,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_ceilometer
     template:
@@ -8099,6 +8114,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_cinder
     template:
@@ -8107,6 +8123,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_designate
     template:
@@ -8115,6 +8132,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_glance
     template:
@@ -8123,6 +8141,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_gnocchi
     template:
@@ -8131,6 +8150,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_heat
     template:
@@ -8139,6 +8159,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_horizon
     template:
@@ -8147,6 +8168,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_keystone
     template:
@@ -8155,6 +8177,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_magnum
     template:
@@ -8163,6 +8186,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_neutron
     template:
@@ -8171,6 +8195,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_nova
     template:
@@ -8179,6 +8204,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_rally
     template:
@@ -8187,6 +8213,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_swift
     template:
@@ -8195,6 +8222,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_tempest
     template:
@@ -8203,6 +8231,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-os_zaqar
     template:
@@ -8211,6 +8240,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-pip_install
     template:
@@ -8219,6 +8249,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-pip_lock_down
     template:
@@ -8227,6 +8258,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-plugins
     template:
@@ -8246,6 +8278,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-rabbitmq_server
     template:
@@ -8254,6 +8287,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-repo_build
     template:
@@ -8262,6 +8296,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-repo_server
     template:
@@ -8270,6 +8305,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-rsyslog_client
     template:
@@ -8278,6 +8314,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-rsyslog_server
     template:
@@ -8286,6 +8323,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-security
     template:
@@ -8294,6 +8332,7 @@ projects:
       - name: openstack-server-publish-jobs
       - name: ansible-role-functional-jobs-trusty
       - name: ansible-role-functional-jobs-centos7-nv
+      - name: ansible-role-functional-jobs-xenial-nv
 
   - name: openstack/openstack-ansible-specs
     template: