From 0c8560de77a8f288f93a825af21e00a0da30e01a Mon Sep 17 00:00:00 2001
From: Sorin Sbarnea <ssbarnea@redhat.com>
Date: Wed, 15 Jan 2020 16:22:48 +0000
Subject: [PATCH] Making opensuse-tumbleweed jobs nv

Avoids ocasional failures caused by broken mirror repository.

We keep it, as it proves useful in discovering other issues from time
to time.

See https://zuul.opendev.org/t/zuul/builds?job_name=zuul-jobs-test-multinode-roles-opensuse-tumbleweed

Also assures linting catches errors caused by changes that missed to
regenerate the project stanza.

Change-Id: Id988a51175e8daa4f3c9725822dadcd7cd7aeb0e
---
 tools/update-test-platforms.py       |  4 ++-
 tox.ini                              |  2 ++
 zuul-tests.d/general-roles-jobs.yaml | 39 +++++++++++++++++++++++-----
 3 files changed, 38 insertions(+), 7 deletions(-)

diff --git a/tools/update-test-platforms.py b/tools/update-test-platforms.py
index 657ce8094..825f0b79b 100755
--- a/tools/update-test-platforms.py
+++ b/tools/update-test-platforms.py
@@ -41,7 +41,9 @@ PLATFORMS = [
 ]
 
 # insert a platform from above to make it non-voting
-NON_VOTING = []
+NON_VOTING = [
+    'opensuse-tumbleweed',
+]
 
 
 def get_nodeset(platform, multinode):
diff --git a/tox.ini b/tox.ini
index 51461d489..9886380b4 100644
--- a/tox.ini
+++ b/tox.ini
@@ -51,6 +51,8 @@ commands =
   bash -c "find playbooks -type f -regex '.*.ya?ml' ! -regex '.*vars\/.*' -exec \
     ansible-playbook --syntax-check -i {toxinidir}/tests/inventory \{\} + > /dev/null"
   {toxinidir}/tools/check_jobs_documented.py
+  {toxinidir}/tools/update-test-platforms.py
+  bash -c "git diff --quiet || \{ echo 'ERROR: git in dirty status, reporting as failure'; exit 1; \}"
 
 [testenv:venv]
 commands = {posargs}
diff --git a/zuul-tests.d/general-roles-jobs.yaml b/zuul-tests.d/general-roles-jobs.yaml
index 528140d9a..801e2f024 100644
--- a/zuul-tests.d/general-roles-jobs.yaml
+++ b/zuul-tests.d/general-roles-jobs.yaml
@@ -185,7 +185,8 @@
           label: opensuse-15
 
 - job:
-    name: zuul-jobs-test-base-roles-opensuse-tumbleweed
+    name: zuul-jobs-test-base-roles-opensuse-tumbleweed-nv
+    voting: false
     description: Tests roles in the 'base' job on opensuse-tumbleweed
     parent: zuul-jobs-test-base-roles
     tags: auto-generated
@@ -386,7 +387,8 @@
             - secondary
 
 - job:
-    name: zuul-jobs-test-multinode-roles-opensuse-tumbleweed
+    name: zuul-jobs-test-multinode-roles-opensuse-tumbleweed-nv
+    voting: false
     description: Tests multinode setup roles on opensuse-tumbleweed
     parent: zuul-jobs-test-multinode-roles
     tags: auto-generated
@@ -465,7 +467,7 @@
 
 - project:
     check:
-      jobs: &id001
+      jobs:
         - zuul-jobs-test-add-authorized-keys
         - zuul-jobs-test-add-gpgkey
         - zuul-jobs-test-add-sshkey
@@ -475,7 +477,7 @@
         - zuul-jobs-test-base-roles-fedora-29
         - zuul-jobs-test-base-roles-gentoo-17-0-systemd
         - zuul-jobs-test-base-roles-opensuse-15
-        - zuul-jobs-test-base-roles-opensuse-tumbleweed
+        - zuul-jobs-test-base-roles-opensuse-tumbleweed-nv
         - zuul-jobs-test-base-roles-ubuntu-bionic
         - zuul-jobs-test-base-roles-ubuntu-xenial
         - zuul-jobs-test-bindep
@@ -488,10 +490,35 @@
         - zuul-jobs-test-multinode-roles-fedora-29
         - zuul-jobs-test-multinode-roles-gentoo-17-0-systemd
         - zuul-jobs-test-multinode-roles-opensuse-15
-        - zuul-jobs-test-multinode-roles-opensuse-tumbleweed
+        - zuul-jobs-test-multinode-roles-opensuse-tumbleweed-nv
         - zuul-jobs-test-multinode-roles-ubuntu-bionic
         - zuul-jobs-test-multinode-roles-ubuntu-xenial
         - zuul-jobs-test-generate-zuul-manifest
         - zuul-jobs-test-upload-git-mirror
     gate:
-      jobs: *id001
+      jobs:
+        - zuul-jobs-test-add-authorized-keys
+        - zuul-jobs-test-add-gpgkey
+        - zuul-jobs-test-add-sshkey
+        - zuul-jobs-test-base-roles-centos-7
+        - zuul-jobs-test-base-roles-centos-8
+        - zuul-jobs-test-base-roles-debian-stretch
+        - zuul-jobs-test-base-roles-fedora-29
+        - zuul-jobs-test-base-roles-gentoo-17-0-systemd
+        - zuul-jobs-test-base-roles-opensuse-15
+        - zuul-jobs-test-base-roles-ubuntu-bionic
+        - zuul-jobs-test-base-roles-ubuntu-xenial
+        - zuul-jobs-test-bindep
+        - zuul-jobs-test-clear-firewall
+        - zuul-jobs-test-netconsole
+        - zuul-jobs-test-dstat-graph
+        - zuul-jobs-test-multinode-roles-centos-7
+        - zuul-jobs-test-multinode-roles-centos-8
+        - zuul-jobs-test-multinode-roles-debian-stretch
+        - zuul-jobs-test-multinode-roles-fedora-29
+        - zuul-jobs-test-multinode-roles-gentoo-17-0-systemd
+        - zuul-jobs-test-multinode-roles-opensuse-15
+        - zuul-jobs-test-multinode-roles-ubuntu-bionic
+        - zuul-jobs-test-multinode-roles-ubuntu-xenial
+        - zuul-jobs-test-generate-zuul-manifest
+        - zuul-jobs-test-upload-git-mirror