commit 1ad48c098334bbfbc91759398de29ade0ec12fef Author: Roman Gorshunov Date: Wed Sep 30 10:07:26 2020 +0200 Reduce Zuul CI pool workload Added patterns of files which should and should not trigger jobs on Zuul CI, to reduce workload imposed onto the CI infrastructure. Change-Id: I7081c7a2a4902a29e571dce1133465f2821d71a3 diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 97de3c9..e30e280 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -14,6 +14,8 @@ name: airship-airshipctl-roles-test run: tests/ansible/role-test-runner.yaml nodeset: airship-airshipctl-single-node + files: + - ^roles/.*$ - job: name: airship-airshipctl-golint @@ -21,12 +23,19 @@ run: playbooks/airship-airshipctl-golint.yaml nodeset: airship-airshipctl-single-node voting: false + files: &gofiles + - ^Makefile$ + - ^\.golangci\.yaml$ + - ^(go\.(mod|sum)|.*\.go)$ + - ^playbooks/airship-airshipctl-(golint|lint-unit)\.yaml$ + - ^tools/(coverage_check|golint|gomod_check|install_linter)$ - job: name: airship-airshipctl-lint-unit pre-run: playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airship-airshipctl-lint-unit.yaml nodeset: airship-airshipctl-single-node + files: *gofiles - job: name: airship-airshipctl-update-github-issues @@ -41,9 +50,11 @@ name: airship-airshipctl-build-image nodeset: airship-airshipctl-single-node run: playbooks/airship-airshipctl-build-images.yaml - irrelevant-files: - - ^.*\.md$ + irrelevant-files: &noncodefiles + - ^certs/.*$ - ^docs/.*$ + - ^.*\.md$ + - ^\.github/.*$ - job: name: airship-airshipctl-validate-site-docs @@ -51,6 +62,7 @@ - playbooks/airship-airshipctl-deploy-docker.yaml run: playbooks/airshipctl-gate-runner.yaml nodeset: airship-airshipctl-single-node + irrelevant-files: *noncodefiles vars: gate_scripts: - ./tools/deployment/01_install_kubectl.sh @@ -84,11 +96,7 @@ post-run: playbooks/airship-collect-logs.yaml run: playbooks/airshipctl-gate-runner.yaml nodeset: airship-airshipctl-single-16GB-bionic-node - irrelevant-files: - - ^certs/.*$ - - ^docs/.*$ - - ^.*\.md$ - - ^\.github/.*$ + irrelevant-files: *noncodefiles vars: site_name: test-site gate_scripts: @@ -121,6 +129,7 @@ name: airship-airshipctl-publish-image parent: airship-airshipctl-build-image post-run: playbooks/airship-airshipctl-publish-images.yaml + irrelevant-files: *noncodefiles secrets: - name: airshipctl_image_repo_credentials secret: airshipctl_image_repo_credentials diff --git a/zuul.d/projects.yaml b/zuul.d/projects.yaml index 6cbe32d..6086e73 100644 --- a/zuul.d/projects.yaml +++ b/zuul.d/projects.yaml @@ -15,19 +15,19 @@ sphinx_build_dir: docs/build check: jobs: - - airship-airshipctl-roles-test: + - openstack-tox-docs: &docs files: - - "roles/*" - - openstack-tox-docs - - airship-airshipctl-lint-unit + - ^docs/.*$ - airship-airshipctl-golint + - airship-airshipctl-lint-unit + - airship-airshipctl-roles-test - airship-airshipctl-build-image - airship-airshipctl-validate-site-docs # - airship-airshipctl-functional-existing-k8s TODO: Enable this when functional tests exist, and a cluster is up - airship-airshipctl-gate-script-runner gate: jobs: - - openstack-tox-docs + - openstack-tox-docs: *docs - airship-airshipctl-lint-unit - airship-airshipctl-build-image - airship-airshipctl-validate-site-docs @@ -38,5 +38,5 @@ - airship-airshipctl-upload-git-mirror promote: jobs: - - promote-airship-project-docs + - promote-airship-project-docs: *docs - airship-airshipctl-update-github-issues