Add docker image building jobs

This adds the infrastructure for building docker images: the
credential used to upload to Docker Hub as well as the parent jobs
and playbooks to perform the builds.

Change-Id: I7cbbcdd184c4934f1b0ce5905d9760c732b06aa9
Depends-On: https://review.openstack.org/631078
This commit is contained in:
James E. Blair 2019-01-15 14:18:09 -08:00
parent 9e6a4d327e
commit 7a6ae3aadb
5 changed files with 72 additions and 0 deletions

View File

@ -22,6 +22,66 @@
vars:
project_src_dir: "{{ zuul.project.src_dir }}/modules/openstack_project"
# Image building jobs
- secret:
name: system-config-dockerhub
data:
username: openstackzuul
password: !encrypted/pkcs1-oaep
- iz3aVtc1eXwM/d02gaA8qyvryJtrOOTmPZhfWiRw3VaVpuU/lrpSD/qRKPwBEbhFCpzCh
B3eelTaJMKaMsVFU/cD+EOB6MBpCtHreKug3+B1g1Ag9TQaLGfa2d7swPRrhFEENpQBzm
D9OqBYVCWTyGo/Y1nkC/zb+e1H2IdI1axNJrVaKR6FYN8vhpPsflvyW2PCNsdT2YlKCMz
G0wFMJv6zMH6Jw1c0ruHm5pa9O4EWLwhmdxHMeTRAT4JVJdLehVGQLBXvXxZzMOXB2Jrj
KHIMFFhzlc1bZXcFKAMakvfP0ARLmPySEnIcVHjHXvsXmGLuVB0lSXUtUB1QW8qJcso1m
C0ky4VAFHoNB/EV5VGu7btkZDtJKzsQcPXnaT1LcX1xS+QC0bC4SYR25WN9RK7z1sXvMn
dxMIwJIvXOb+aE5mdl63G8OBTxznPAGioCZNjqoMPQJ7VzITSYnPiW5CyZDUinTSDDver
zHBG/Svpwiu7Lm2vOgExHYdCDeo0a5lacxjcwW2FfP7fal3ZLoTeSTGXvIaffS552mZ9L
I0cLfq/ikkbaC4a+bqFnVdDm9wNAyBtOkq5wn3TqOFMrFaBlkI5/34i2fLauZOoka6bcN
zJnvDrjRemvgmWP1q4uI8cPzJK3zjN9/GYrs1MQxHCsNn33sWpc1oHRO+TL/8g=
- job:
name: system-config-build-image
description: |
Build a docker image.
See the `role documentation
<https://zuul-ci.org/docs/zuul-jobs/roles.html#role-build-docker-image>`_
for details.
abstract: true
pre-run: playbooks/zuul/build-image/pre.yaml
run: playbooks/zuul/build-image/run.yaml
- job:
name: system-config-upload-image
parent: system-config-build-image
description: |
Build and upload a docker image.
See the `role documentation
<https://zuul-ci.org/docs/zuul-jobs/roles.html#role-upload-docker-image>`_
for details.
abstract: true
post-run: playbooks/zuul/build-image/upload.yaml
secrets:
name: credentials
secret: system-config-dockerhub
- job:
name: system-config-promote-image
description: |
Retag a previously-uploaded docker image.
See the `role documentation
<https://zuul-ci.org/docs/zuul-jobs/roles.html#role-promote-docker-image>`_
for details.
abstract: true
run: playbooks/zuul/build-image/promote.yaml
secrets:
name: credentials
secret: system-config-dockerhub
nodeset:
nodes: []
# Role integration jobs. These test the top-level generic roles/*
# under Zuul. The range of platforms should be the same as those for
# openstack-zuul-jobs.

View File

@ -0,0 +1,3 @@
- hosts: all
roles:
- install-docker

View File

@ -0,0 +1,3 @@
- hosts: localhost
roles:
- promote-docker-image

View File

@ -0,0 +1,3 @@
- hosts: all
roles:
- build-docker-image

View File

@ -0,0 +1,3 @@
- hosts: all
roles:
- upload-docker-image