zuul-jobs/roles
Andrii Ostapenko ef47a743b6
Add ability to use *-docker-image roles in periodic jobs
Use '{{ zuul.pipeline }}' tag prefix in *-docker-image instead of
'change_{{ zuul.change }}' one when zuul.change is not provided, that is
the case with periodic jobs. This allows to build, upload and promote images
using periodic jobs e.g:

- project:
    periodic:
      - project-buildset-registry

      - project-build-image1:
          dependencies:
            - name: project-buildset-registry
      - project-build-image2:
          dependencies:
            - name: project-buildset-registry

      # pulls from buildset registry and tests both images
      - project-test:
          dependencies:
            - name: project-build-image1
            - name: project-build-image2

      # pre-pulls images from buildset registry for fast build
      - project-upload-image1:
          dependencies:
            - name: project-test
      - project-upload-image2:
          dependencies:
            - name: project-test

      - project-promote:
          dependencies:
            - name: project-upload-image1
            - name: project-upload-image2

This fuctionality will allow to keep latest images up to date for the
case when image incorporates continuously updating code from multiple
repositories.

Using true ternary for tag evaluation because ternary filter requires
all passed to it variables be defined or defaulted [0].

[0] https://github.com/ansible/ansible/issues/51276

Change-Id: I8eb7d2baa24905e7aac51fce0b2f9b1f24f037f9
Signed-off-by: Andrii Ostapenko <andrii.ostapenko@att.com>
2020-09-25 14:22:17 -05:00
..
add-authorized-keys Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
add-build-sshkey add-build-sshkey: call cmd with command 2020-08-11 11:40:33 +02:00
add-fileserver Document upload-logs reliance on add-fileserver 2019-01-22 14:41:11 -08:00
add-gpgkey Add roles to add/remove a GPG key 2017-10-19 13:26:16 -07:00
add-launchpad-credentials fix the template instruction for writing launchpadlib/creds 2017-10-16 16:41:05 -04:00
add-sshkey Add-sshkey: ensure that ssh home directory exists 2020-09-01 14:43:15 +02:00
ansible-galaxy-import Fix typo with ansible_galaxy_info.token 2018-10-12 16:59:20 -04:00
ara-report ara-report: add option for artifact prefix 2020-08-20 14:39:05 +10:00
bazel-build Add Bazel build and ensure roles 2020-04-30 18:05:41 +01:00
bindep bindep: Fixed runtime warnings 2020-08-24 18:32:16 +01:00
build-container-image Set up siblings dirs for each build in the loop 2020-05-05 17:52:50 -05:00
build-docker-image Add ability to use *-docker-image roles in periodic jobs 2020-09-25 14:22:17 -05:00
build-puppet-module Rename install-pdk-dependencies to ensure-pdk-dependencies for consistency 2020-04-04 15:41:29 -04:00
build-python-release Partial revert "Ensure wheel exists for build-release-python"; move to ensure-pip 2020-06-18 12:51:56 +00:00
build-releasenotes Run sphinx-build in parallel for releasenotes 2020-05-15 00:35:29 +00:00
buildset-artifacts-location Fix RST formatting 2018-10-13 10:36:36 +02:00
cabal-test cabal-test: add build target job variable 2020-05-08 13:38:17 +00:00
chart-testing Move chart-testing to a role and disable version check 2020-01-09 11:46:41 -08:00
clear-firewall Add note to clear-firewall docs 2019-07-25 14:29:52 -07:00
collect-container-logs yamlint: EOF newlines and comments indent 2020-05-14 08:42:17 +00:00
collect-kubernetes-logs Fix namespace speicification in collect-kubernetes-logs role 2020-06-16 04:17:39 +03:00
configure-mirrors Drop suse mirror types in our zypper repo configs 2020-08-06 13:59:27 -07:00
copy-build-sshkey Use main.yaml, not .yml 2020-04-20 17:44:49 +02:00
create-afs-token Be consistent about spaces before and after vars 2019-08-07 20:17:41 +01:00
deploy-openshift install-openshift: bump version to 3.11.0 2019-08-15 16:54:26 +00:00
destroy-afs-token Add create / destory roles for AFS tokens 2017-08-28 13:53:10 -04:00
download-artifact download-artifact: fix missed part of revert 2020-06-05 15:23:58 +10:00
dstat-graph Add dstat graph roles 2019-07-17 15:45:24 +00:00
emit-job-header emit-job-header: add inventory hostname 2020-07-02 15:59:15 +10:00
enable-netconsole Add a netconsole role 2019-09-09 18:14:00 +10:00
ensure-babel Fix deprecation warning of ansible-2.5 2018-06-04 00:17:18 +00:00
ensure-bazel Merge "ensure-bazel: replace ignore_errors with failed_when" 2020-05-29 14:21:44 +00:00
ensure-bazelisk Document output variables 2020-04-17 10:45:15 +02:00
ensure-cabal cabal-test: add build target job variable 2020-05-08 13:38:17 +00:00
ensure-chart-testing ensure-chart-testing: install pip 2020-06-20 12:31:08 -04:00
ensure-devstack Enable tls-proxy in ensure-devstack 2020-07-18 15:05:33 -07:00
ensure-dhall Remove some temporary files 2020-05-06 07:54:30 +02:00
ensure-docker ensure-docker: remove amd64 architecture pin 2020-08-14 10:30:03 +10:00
ensure-dstat-graph Add dstat graph roles 2019-07-17 15:45:24 +00:00
ensure-ghc cabal-test: add initial haskell job 2020-04-24 13:12:13 +00:00
ensure-go Enable yamllint 2020-05-04 17:47:11 +01:00
ensure-golangci-lint golangci-lint: add job 2020-04-01 17:30:55 -04:00
ensure-haskell-stack Retire Fedora 31 for 32 2020-09-17 17:54:59 +10:00
ensure-helm yamlint: EOF newlines and comments indent 2020-05-14 08:42:17 +00:00
ensure-hlint hlint: add haskell source code suggestions job 2020-04-26 12:05:12 +00:00
ensure-if-python Rename install-if-python to ensure-if-python for consistency 2020-04-04 15:41:29 -04:00
ensure-java Add ensure-java role 2020-02-21 06:55:47 -06:00
ensure-javascript-build-tool Extract ensure-javascript-build-tool role 2020-05-12 07:53:14 +02:00
ensure-javascript-packages Add new non-npm specific javascript jobs 2020-05-12 07:50:19 +02:00
ensure-kubernetes Add addons args in ensure-kubernetes role 2020-06-02 22:49:00 +03:00
ensure-markdownlint Add a markdownlint job and role 2020-01-27 12:23:24 +00:00
ensure-nodejs ensure-nodejs: refactor to use ensure-package-repositories 2020-05-01 15:49:30 +02:00
ensure-openshift Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
ensure-output-dirs Ensure output dirs are empty 2020-05-12 12:15:39 +02:00
ensure-package-repositories Fix add repositories in RedHat and Suse 2020-07-21 10:51:28 +08:00
ensure-packer Add mode to packer 2020-09-17 16:21:12 +00:00
ensure-pdk-dependencies Rename install-pdk-dependencies to ensure-pdk-dependencies for consistency 2020-04-04 15:41:29 -04:00
ensure-phoronix-test-suite Add phoronix-test-suite job 2020-04-03 13:03:07 +00:00
ensure-pip Merge "ensure-pip: Clarify situation with ensure_pip_from_packages_with_python2" 2020-08-26 23:14:22 +00:00
ensure-podman ensure-podman: update include to include_tasks 2020-05-26 10:08:41 +02:00
ensure-python Add support to use stow for ensure-python 2020-09-24 07:39:52 +00:00
ensure-rust Add ensure-rust role 2020-08-25 09:04:43 +10:00
ensure-shake shake-build: add shake build system job 2020-05-28 12:48:16 +00:00
ensure-sphinx Add ensure-pip and ensure-virtualenv to build-sphinx-docs 2020-06-16 08:20:58 -05:00
ensure-terraform Terraform roles and jobs. 2020-06-11 17:26:50 +02:00
ensure-tox Add option to install tox into a path location 2020-06-17 16:31:07 -05:00
ensure-twine Document twine_executable 2020-06-01 13:11:52 +02:00
ensure-virtualenv ensure-virtualenv: call ensure-pip for Xenial 2020-06-17 10:53:06 +10:00
ensure-yarn ensure-yarn: run ensure-nodejs before 2020-05-01 17:07:48 +02:00
ensure-zookeeper ensure-zookeeper: add role to setup zookeeper 2020-09-24 23:29:59 +00:00
fetch-coverage-output fetch-coverage-output: direct link to coverage data 2020-07-06 01:03:00 +02:00
fetch-javascript-content-tarball fetch-javascript-content-tarball: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-javascript-output fetch-javascript-output: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-javascript-tarball fetch-javascript-tarball: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-markdownlint fetch-markdownlint: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-output Do not keep owner when pulling zuul-output 2020-05-01 16:50:54 +02:00
fetch-output-openshift fetch-logs-openshift: fix miss when replacing item with loop_var: zj_ 2020-05-04 23:08:29 +02:00
fetch-phoronix-results fetch-phoronix-results: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-puppet-module-output fetch-puppet-module-output: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-python-sdist-output fetch-python-sdist-output: do not synchronize owner 2020-05-18 17:04:10 +02:00
fetch-sphinx-output fetch-sphinx-output: do not synchronize owner 2020-05-18 17:04:39 +02:00
fetch-sphinx-tarball fetch-sphinx-tarball: do not synchronize owner 2020-05-18 17:05:32 +02:00
fetch-subunit-output Loop over incomplete subunit files properly 2020-08-07 14:01:18 -07:00
fetch-tox-output Remove default tox_envlist: venv 2020-07-16 21:59:57 +02:00
fetch-translation-output fetch-translation-output: do not synchronize owner 2020-05-18 17:05:32 +02:00
fetch-zuul-cloner fetch-zuul-cloner: use ensure-pip 2020-04-15 15:34:21 -07:00
find-constraints Fix deprecation warning of ansible-2.5 2018-06-04 00:17:18 +00:00
generate-zuul-manifest Fix cleanup of symlink fixtures 2020-02-24 17:17:17 +00:00
git-prepare-nodecache Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
go Adds go jobs and roles. 2019-11-20 20:27:21 +01:00
golangci-lint go: Use 'block: ... always: ...' and failed_when instead of ignore_errors 2020-04-28 16:20:20 +02:00
haskell-stack-test haskell-stack-test: add build target job variable 2020-05-08 14:11:11 +00:00
helm-template Fix the checking helm_values_file definition 2020-04-23 14:35:44 -07:00
hlint hlint: add haskell source code suggestions job 2020-04-26 12:05:12 +00:00
htmlify-logs Set ignore_basepython_conflict to true 2020-05-09 20:43:52 +00:00
js-package-manager Remove --verbose from js_build_command 2020-05-18 11:00:42 -05:00
local-log-download Fix download-logs template 2020-06-01 11:59:14 +00:00
log-inventory log-inventory: remove inventory_file usage 2018-06-27 00:48:24 +00:00
markdownlint Capitalize task names 2020-05-16 17:46:17 +02:00
merge-output-to-logs Add loop var policy to ansible-lint 2020-04-29 17:20:59 +02:00
mirror-workspace-git-repos Multi Node/Context support for mirroring Git workspaces via kubectl 2020-08-17 15:48:14 +02:00
multi-node-bridge Use Train repo to install openvswitch from multi-node-bridge in CentOS 8 2020-09-22 11:12:30 +02:00
multi-node-firewall Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
multi-node-hosts-file Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
multi-node-known-hosts Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
nodejs-test-dependencies Fix npm-run-test 2017-11-14 13:19:08 +00:00
npm Add new non-npm specific javascript jobs 2020-05-12 07:50:19 +02:00
packer Add mode to packer 2020-09-17 16:21:12 +00:00
pause-buildset-registry Add pause-buildset-registry role 2020-02-24 17:17:12 +00:00
persistent-firewall Make persist-iptables more robust 2020-07-02 09:42:58 -06:00
phoronix-combine-results ansible-lint: use matchplay instead of matchtask 2020-05-05 20:42:38 +02:00
phoronix-test-suite Add phoronix-test-suite job 2020-04-03 13:03:07 +00:00
prepare-workspace prepare-workspace: Add Role Variable in README.rst 2020-06-22 21:17:38 +02:00
prepare-workspace-git Revert "Ensure git is installed in prepare-workspace-git role" 2020-08-20 16:13:35 +00:00
prepare-workspace-openshift ansible-lint: use matchplay instead of matchtask 2020-05-05 20:42:38 +02:00
promote-docker-image Add ability to use *-docker-image roles in periodic jobs 2020-09-25 14:22:17 -05:00
publish-artifacts-to-fileserver publish-artifacts-to-fileserver: do not synchronize owner 2020-05-18 17:05:32 +02:00
pull-from-intermediate-registry Add --all to skopeo copy from insecure registry 2020-05-08 15:25:12 -05:00
push-to-intermediate-registry Add --all to skopeo copy from insecure registry 2020-05-08 15:25:12 -05:00
release-afs-volume Add role to do a vos release on an AFS volume 2017-09-01 16:40:40 -05:00
remove-build-sshkey Use main.yaml, not .yml 2020-04-20 17:44:49 +02:00
remove-gpgkey Fix exec quoting in release remove-gpgkey role 2019-03-15 14:36:14 +01:00
remove-launchpad-credentials Add roles for adding and removing launchpadlib credentials 2017-08-30 18:53:21 -05:00
remove-sshkey Capitalize task names 2020-05-16 17:46:17 +02:00
remove-zuul-sshkey Add remove-zuul-sshkey 2020-05-15 12:24:33 +00:00
render-diff render-diff: fix typo in failure messsage 2020-09-03 16:30:15 +00:00
revoke-sudo revoke-sudo: only revoke when zuul is sudoer 2017-12-05 08:36:26 +00:00
run-buildset-registry Support multi-arch image builds with docker buildx 2020-05-04 14:02:13 -05:00
run-dstat Add dstat graph roles 2019-07-17 15:45:24 +00:00
set-zuul-log-path-fact Capitalize task names 2020-05-16 17:46:17 +02:00
shake-build shake-build: add shake build system job 2020-05-28 12:48:16 +00:00
sign-artifacts Record artifact checksums and signatures to stdout 2020-06-16 14:39:57 +00:00
sphinx Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
stage-output Fix with_* loop for ansible 2.9 2020-06-18 15:33:12 +02:00
start-zuul-console Update ANSIBLE_LIBRARY to use envsitepackagesdir 2018-10-18 09:23:25 -05:00
terraform terraform: Add parameter for plan file 2020-08-18 08:59:57 +00:00
test-mirror-workspace-git-repos Check for loop_control in with_ type loops 2020-05-01 13:45:34 +02:00
test-setup Skip test-setup.sh in pep8 jobs 2019-07-10 19:02:57 +02:00
test-upload-logs-swift Return upload_results in test-upload-logs-swift role 2020-06-15 08:19:11 +02:00
tox Remove dependency on pkg_resources 2020-09-01 19:03:13 +00:00
trigger-readthedocs Revert "Debugging for readthedoc web ping" 2018-08-02 19:18:40 +10:00
upload-afs-roots upload-afs: rename to upload-afs-roots; add afs-upload-synchronize 2020-02-04 07:41:00 +11:00
upload-afs-synchronize upload-afs-synchronize: expand documentation 2020-07-15 06:48:44 +10:00
upload-artifactory Merge "upload-artifactory: fix variable misspelling" 2020-05-29 14:15:39 +00:00
upload-docker-image Add ability to use *-docker-image roles in periodic jobs 2020-09-25 14:22:17 -05:00
upload-forge Rework upload-forge role to use module 2019-02-09 10:32:34 +01:00
upload-git-mirror upload-git-mirror: use retries to avoid races 2020-06-26 13:15:41 +02:00
upload-logs upload-logs: do not synchronize owner 2020-05-18 17:05:32 +02:00
upload-logs-gcs Remove copy paste from upload-logs-swift 2020-07-19 13:27:30 +02:00
upload-logs-s3 Update upload-logs-s3 with access/secret key variable documentation 2020-07-23 18:51:39 +02:00
upload-logs-swift Return upload_results in upload-logs-swift role 2020-06-23 09:01:52 +02:00
upload-npm Change to the executor workdir during npm upload 2017-12-09 17:27:56 +00:00
upload-pypi Simplify twine invocation for PyPI uploads 2020-06-18 18:43:43 +00:00
use-buildset-registry Merge "use-buildset-registry: do not update ca when not necessary" 2020-05-05 20:22:57 +00:00
use-docker-mirror use-docker-mirror: update include to include_tasks 2020-05-26 10:09:56 +02:00
validate-dco-license Add validate-dco-license role 2019-01-09 11:39:02 -05:00
validate-host Enable yamllint 2020-05-04 17:47:11 +01:00
validate-zone-db Use unique loop vars to avoid conflicts 2020-02-04 12:23:36 -08:00
version-from-git Fix condition in version-from-git 2018-03-07 08:25:18 +00:00
wait-for-pods Add the namespace in wait-for-pods role 2020-05-29 17:40:31 +03:00
write-inventory write-inventory: add per-host variables 2020-07-08 17:20:21 +10:00
yarn Add new non-npm specific javascript jobs 2020-05-12 07:50:19 +02:00
__init__.py Enable Python 2.7 unit tests 2018-08-17 10:23:20 +10:00