aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2021-04-08 13:59:51 +0000
committerGerrit Code Review <review@openstack.org>2021-04-08 13:59:51 +0000
commitd50832066d090ff672b54e4170a56f5584d31c14 (patch)
tree8fe613066b02974f81ab33ed2f36b39bbeee9f66
parentab8ee75bda2df6a54bab63d90dd0a6542085704f (diff)
parent10d8f03c4e6fe2e78f06e9c59f44210c8c2e73eb (diff)
downloadkolla-d50832066d090ff672b54e4170a56f5584d31c14.tar.gz
kolla-d50832066d090ff672b54e4170a56f5584d31c14.zip
Merge "[CI] Publish images to quay.io on a daily basis"
-rw-r--r--.zuul.d/base.yaml26
-rw-r--r--.zuul.d/centos.yaml43
-rw-r--r--.zuul.d/debian.yaml68
-rw-r--r--.zuul.d/ubuntu.yaml43
-rw-r--r--tests/playbooks/publish.yml38
-rw-r--r--tests/playbooks/run.yml2
6 files changed, 184 insertions, 36 deletions
diff --git a/.zuul.d/base.yaml b/.zuul.d/base.yaml
index 5cbfa3707..e6ad6d20d 100644
--- a/.zuul.d/base.yaml
+++ b/.zuul.d/base.yaml
@@ -25,6 +25,32 @@
Oz6nUZlML6sEyT0vilbDpo1RRweinE5J8mU+8joxeDpCHXBUYekFmgXDlpg58XmSp96fM
C/rWcxTKlGJjjlVFZfhRHHy6gWBYH/SoozkbpkWbk0g43SLSxAuITy7nqLggOU=
+- secret:
+ name: kolla_quay_io_creds
+ data:
+ username: !encrypted/pkcs1-oaep
+ - VsvMvV5wOUfl5B2HJboWfN8mta/Tuk7PXcJf5RfKk4uXP6qYGM4dcMB9EdoJNhMCi7FeA
+ NrTZaxf/AjLAkgKlRhz7sPKhmR95+jrFRgEzedpcCamdPkCa+wNQEMNMd0rTwioYUEWm4
+ Y+Oa2mIswy5LcUViz38MPQhf0725U5sYtH2qkuhMbU8u8vzYhSk749xtAN6I1T8ziTKKB
+ 3FBowFc2rSRJUQPsLLZjTxBHbrk+00p/DPoHLOz9/9Jf5U//jkqx4ziE2w1a4+x/kWlYT
+ BPXuRL9wWN9ci2uKuoDRRd6QHJzPIJerKG07YU4PAcS3M245rbjjUQC3n3SQJs3u4kKI8
+ rZrxfbmtbfjkzRQXnhnhPk47PebpjnpEUNw6+scnQ+ELdQ0QYGsVRM4x4/ywe5CeFYVDR
+ whQQ1iG21FOs3iv592I7P7l4cEKqKFyx9qiV4t2fyLrHgtU+L/05iENH9igGJ0tDCQ5zT
+ 2F2laUWGtzUh76txuFDjpBxR3qS62g825dZXaTegkA+v6c1az23lrYTqbTRf63cuAQyYX
+ APPRC5QU0URXBoIbWb0ry3O5lr/uudI1ZCLN8SSJhpmZAIlviOfaxrKu9fg2YY9e0xpz9
+ CMEWQ/n1EsUyL34Wv189Rvpq4M4GTvozEKsRsjY3u0ygwEUXcH2lEXGOrs+hms=
+ password: !encrypted/pkcs1-oaep
+ - dR2beX9Bn7O8iCqNHtWo1FWX71vy+CwffDk5rafUh5yew2OVNcVtVjVOPvHwb5zZv1LCd
+ MVcgIJe513dM5tQkn2H/HvN/seVu/CfHA6lg6Tj+ueW9VdUH6KiBPr+NCgQWX+Xt3sXbt
+ sPzfNGpvTw1ZCUp0nnudZEKPZ2jn83baNMumW8E8xPb4s2kePzINsb8sGvqy6BOk5rUIo
+ 7DaEwWrNnq9TTnMcWGIF+fLP5Pin7+fmvnLkT6qRN4v5FszpHYm8YCpv02nzqI1/F9HeM
+ P3GtkUdIPxa1+3VwZ/DSA9BWi4VG15jDtaxeZFVGQuMqQAiCx8Jqvd+xX2qugAq1m+U7W
+ JobDbaeTYrUmJ1zUaspPZ16RTSf9UGCTaejoSVKM9lJHv6ixtsX7UWkgFvceVrlkt7TtH
+ 2mqhBnXvwB6VD5d311WRUfNXz7gb60otisB5G2k/UnRnv1Mu33TPVT7XOFDpVnAvRS3lt
+ haJ34N7AWnDIsllvzcmVWTw3wf/6LLfOQrW2Z+vNambyR4Oc+LVUTbEvZVIU65LpOTIn3
+ LfDhCLDD3VtnVOrj4UxZsjzmPbday1fziua/7f+CXsShC5erz0ZM65rMCwkjWeI6Kc63A
+ 0M27tl+OWHO3KkfFR4tWc3dws3r1kYjQeds0adBHyYD0eL8SJfwZkbtojAQ1JM=
+
- nodeset:
name: kolla-centos8-stream
nodes:
diff --git a/.zuul.d/centos.yaml b/.zuul.d/centos.yaml
index e5be6d91a..282626430 100644
--- a/.zuul.d/centos.yaml
+++ b/.zuul.d/centos.yaml
@@ -16,15 +16,18 @@
- kolla-build-centos8s-source
- kolla-ansible-centos8-source
- kolla-ansible-centos8-source-upgrade
- # NOTE(mgoddard): This can be switched to periodic to revert to daily publishing.
+ periodic:
+ jobs:
+ - kolla-publish-centos8s-source-quay
+ - kolla-publish-centos8s-binary-quay
periodic-weekly:
jobs:
- - kolla-publish-centos8s-source
- - kolla-publish-centos8s-binary
+ - kolla-publish-centos8s-source-dockerhub
+ - kolla-publish-centos8s-binary-dockerhub
release:
jobs:
- - kolla-publish-centos8s-source
- - kolla-publish-centos8s-binary
+ - kolla-publish-centos8s-source-dockerhub
+ - kolla-publish-centos8s-binary-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-centos8s-source
@@ -64,15 +67,28 @@
install_type: binary
- job:
- name: kolla-publish-centos8s-binary
+ name: kolla-publish-centos8s-binary-dockerhub
parent: kolla-build-centos8s-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
+ name: kolla-publish-centos8s-binary-quay
+ parent: kolla-build-centos8s-binary
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
name: kolla-build-centos8s-source
parent: kolla-base
nodeset: kolla-centos8-stream
@@ -87,15 +103,28 @@
voting: false
- job:
- name: kolla-publish-centos8s-source
+ name: kolla-publish-centos8s-source-dockerhub
parent: kolla-build-centos8s-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
+ name: kolla-publish-centos8s-source-quay
+ parent: kolla-build-centos8s-source
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
name: kolla-build-no-infra-wheels-centos8s-source
parent: kolla-build-no-infra-wheels-base
nodeset: kolla-centos8-stream
diff --git a/.zuul.d/debian.yaml b/.zuul.d/debian.yaml
index 1ac3605a8..60e65aaff 100644
--- a/.zuul.d/debian.yaml
+++ b/.zuul.d/debian.yaml
@@ -9,16 +9,19 @@
jobs:
- kolla-build-debian-source-aarch64
- kolla-ansible-debian-source-aarch64
- # NOTE(mgoddard): This can be switched to periodic to revert to daily publishing.
+ periodic:
+ jobs:
+ - kolla-publish-debian-source-quay
+ - kolla-publish-debian-source-aarch64-quay
periodic-weekly:
jobs:
- - kolla-publish-debian-source
- - kolla-publish-debian-source-aarch64
+ - kolla-publish-debian-source-dockerhub
+ - kolla-publish-debian-source-aarch64-dockerhub
release:
jobs:
- - kolla-publish-debian-source
- - kolla-publish-debian-source-aarch64
- - kolla-publish-debian-binary
+ - kolla-publish-debian-source-dockerhub
+ - kolla-publish-debian-source-aarch64-dockerhub
+ - kolla-publish-debian-binary-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-debian-source
@@ -47,27 +50,70 @@
install_type: binary
- job:
- name: kolla-publish-debian-binary
+ name: kolla-publish-debian-binary-dockerhub
parent: kolla-build-debian-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
- name: kolla-publish-debian-source
+ name: kolla-publish-debian-binary-quay
+ parent: kolla-build-debian-binary
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
+ name: kolla-publish-debian-source-dockerhub
parent: kolla-build-debian-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
- name: kolla-publish-debian-source-aarch64
- parent: kolla-publish-debian-source
- nodeset: kolla-debian-buster-aarch64
+ name: kolla-publish-debian-source-quay
+ parent: kolla-build-debian-source
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
+ name: kolla-publish-debian-source-aarch64-dockerhub
+ parent: kolla-build-debian-source-aarch64
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
+ secrets:
+ - kolla_dockerhub_creds
+
+- job:
+ name: kolla-publish-debian-source-aarch64-quay
+ parent: kolla-build-debian-source-aarch64
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
- job:
name: kolla-build-no-infra-wheels-debian-source
diff --git a/.zuul.d/ubuntu.yaml b/.zuul.d/ubuntu.yaml
index 9befdb4b4..df1b80949 100644
--- a/.zuul.d/ubuntu.yaml
+++ b/.zuul.d/ubuntu.yaml
@@ -23,15 +23,18 @@
- kolla-ansible-ubuntu-source-upgrade:
vars:
kolla_python_version: 3.8
- # NOTE(mgoddard): This can be switched to periodic to revert to daily publishing.
+ periodic:
+ jobs:
+ - kolla-publish-ubuntu-source-quay
+ - kolla-publish-ubuntu-binary-quay
periodic-weekly:
jobs:
- - kolla-publish-ubuntu-source
- - kolla-publish-ubuntu-binary
+ - kolla-publish-ubuntu-source-dockerhub
+ - kolla-publish-ubuntu-binary-dockerhub
release:
jobs:
- - kolla-publish-ubuntu-source
- - kolla-publish-ubuntu-binary
+ - kolla-publish-ubuntu-source-dockerhub
+ - kolla-publish-ubuntu-binary-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-ubuntu-source
@@ -91,15 +94,28 @@
install_type: binary
- job:
- name: kolla-publish-ubuntu-binary
+ name: kolla-publish-ubuntu-binary-dockerhub
parent: kolla-build-ubuntu-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
+ name: kolla-publish-ubuntu-binary-quay
+ parent: kolla-build-ubuntu-binary
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
name: kolla-build-ubuntu-source
parent: kolla-base
nodeset: kolla-ubuntu-focal
@@ -108,15 +124,28 @@
install_type: source
- job:
- name: kolla-publish-ubuntu-source
+ name: kolla-publish-ubuntu-source-dockerhub
parent: kolla-build-ubuntu-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
+ kolla_registry: dockerhub
+ kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
+ name: kolla-publish-ubuntu-source-quay
+ parent: kolla-build-ubuntu-source
+ post-run: tests/playbooks/publish.yml
+ vars:
+ publisher: true
+ kolla_registry: quay.io
+ kolla_namespace: openstack.kolla
+ secrets:
+ - kolla_quay_io_creds
+
+- job:
name: kolla-build-no-infra-wheels-ubuntu-source
parent: kolla-build-no-infra-wheels-base
nodeset: kolla-ubuntu-focal
diff --git a/tests/playbooks/publish.yml b/tests/playbooks/publish.yml
index 1149408fe..6c688b664 100644
--- a/tests/playbooks/publish.yml
+++ b/tests/playbooks/publish.yml
@@ -11,16 +11,34 @@
docker_host_info:
images: yes
images_filters:
- reference: "kolla/*"
+ reference: "{{ kolla_namespace }}/*"
register: docker_host_info
- - name: Login to Dockerhub
- docker_login:
- username: "{{ kolla_dockerhub_creds.user | trim }}"
- password: "{{ kolla_dockerhub_creds.password | trim }}"
+ - block:
+ - name: Login to Dockerhub
+ docker_login:
+ username: "{{ kolla_dockerhub_creds.user | trim }}"
+ password: "{{ kolla_dockerhub_creds.password | trim }}"
- - name: Push built container images
- docker_image:
- name: "{{ item.RepoTags.0 }}"
- push: yes
- loop: "{{ docker_host_info.images }}"
+ - name: Push built container images
+ docker_image:
+ name: "{{ item.RepoTags.0 }}"
+ push: yes
+ loop: "{{ docker_host_info.images }}"
+ when: kolla_registry == 'dockerhub'
+
+ - block:
+ - name: Login to quay.io
+ docker_login:
+ registry: quay.io
+ username: "{{ kolla_quay_io_creds.username | trim }}"
+ password: "{{ kolla_quay_io_creds.password | trim }}"
+
+ - name: Push built container images
+ docker_image:
+ name: "{{ item.RepoTags.0 }}"
+ push: yes
+ repository: "quay.io/{{ item.RepoTags.0 }}"
+ source: local
+ loop: "{{ docker_host_info.images }}"
+ when: kolla_registry == 'quay.io'
diff --git a/tests/playbooks/run.yml b/tests/playbooks/run.yml
index 3407aa6e8..092464c0f 100644
--- a/tests/playbooks/run.yml
+++ b/tests/playbooks/run.yml
@@ -31,7 +31,7 @@
vars:
kolla_publisher_config:
DEFAULT:
- namespace: kolla
+ namespace: "{{ kolla_namespace }}"
tag: "{{ (zuul.tag if zuul.pipeline == 'release' else zuul.branch | basename) ~ tag_suffix }}"
set_fact:
kolla_build_config: "{{ kolla_build_config | combine(kolla_publisher_config, recursive=True) }}"