From 03c5738068a0eeb53d6cdd89f2ce0d94df20782e Mon Sep 17 00:00:00 2001 From: Zhao Chao Date: Fri, 23 Feb 2018 15:10:08 +0800 Subject: [PATCH] Only launch in-tree zuul jobs when necessary Adding 'irrelevant-files' attribute for the in-tree zuul jobs to avoid unnecessary launching. Also add new abstract jobs to hold common attributes among similar jobs. Change-Id: I047412f7fee494e7638f9bdabe0c022619e5fb33 Signed-off-by: Zhao Chao --- .zuul.yaml | 226 ++++++++++++++--------------------------------------- 1 file changed, 57 insertions(+), 169 deletions(-) diff --git a/.zuul.yaml b/.zuul.yaml index caac3c3004..700078c36f 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -45,10 +45,9 @@ - trove-scenario-percona-multi - job: - name: trove-functional-mysql + name: trove-legacy-dsvm-base parent: legacy-dsvm-base - run: playbooks/legacy/trove-functional-dsvm-mysql/run.yaml - post-run: playbooks/legacy/trove-functional-dsvm-mysql/post.yaml + abstract: true timeout: 10800 required-projects: - openstack-infra/devstack-gate @@ -57,13 +56,46 @@ - openstack/tripleo-image-elements - openstack/trove - openstack/trove-dashboard + irrelevant-files: + - ^.*\.rst$ + - ^api-ref/.*$ + - ^apidocs/.*$ + - ^doc/.*$ + - ^releasenotes/.*$ + - ^tools/.*$ + - ^trove/hacking/.*$ + - ^trove/tests/unittests/.*$ + +- job: + name: trove-fakemodetests-base + parent: openstack-tox-py27 + abstract: true + irrelevant-files: + - ^.*\.rst$ + - ^api-ref/.*$ + - ^apidocs/.*$ + - ^contrib/.*$ + - ^doc/.*$ + - ^releasenotes/.*$ + - ^setup.cfg$ + - ^tools/.*$ + - ^trove/hacking/.*$ + - ^trove/tests/api/.*$ + - ^trove/tests/db/.*$ + - ^trove/tests/scenario/.*$ + - ^trove/tests/unittests/.*$ + +- job: + name: trove-functional-mysql + parent: trove-legacy-dsvm-base + run: playbooks/legacy/trove-functional-dsvm-mysql/run.yaml + post-run: playbooks/legacy/trove-functional-dsvm-mysql/post.yaml - job: name: trove-grenade - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/grenade-dsvm-trove/run.yaml post-run: playbooks/legacy/grenade-dsvm-trove/post.yaml - timeout: 10800 required-projects: - openstack-dev/grenade - openstack-infra/devstack-gate @@ -72,265 +104,121 @@ - job: name: trove-scenario-cassandra-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-cassandra-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-cassandra-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-cassandra-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-cassandra-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-cassandra-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-couchdb-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-couchdb-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-couchdb-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-couchbase-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-couchbase-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-couchbase-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mariadb-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mariadb-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mariadb-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mariadb-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mariadb-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mariadb-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mongodb-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mongodb-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mongodb-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mongodb-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mongodb-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mongodb-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mysql-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mysql-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mysql-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-mysql-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-mysql-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-mysql-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-percona-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-percona-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-percona-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-percona-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-percona-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-percona-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-postgresql-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-postgresql-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-postgresql-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-postgresql-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-postgresql-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-postgresql-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-pxc-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-pxc-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-pxc-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-pxc-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-pxc-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-pxc-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-redis-single - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-redis-single/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-redis-single/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-scenario-redis-multi - parent: legacy-dsvm-base + parent: trove-legacy-dsvm-base run: playbooks/legacy/trove-scenario-dsvm-redis-multi/run.yaml post-run: playbooks/legacy/trove-scenario-dsvm-redis-multi/post.yaml - timeout: 10800 - required-projects: - - openstack-infra/devstack-gate - - openstack/diskimage-builder - - openstack/python-troveclient - - openstack/tripleo-image-elements - - openstack/trove - - openstack/trove-dashboard - job: name: trove-tox-fakemodetests - parent: openstack-tox-py27 + parent: trove-fakemodetests-base vars: tox_envlist: fakemodetests - job: name: trove-tox-apiexamples - parent: openstack-tox-py27 + parent: trove-fakemodetests-base vars: tox_envlist: apiexamples