7a6ae3aadb
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
380 lines
11 KiB
YAML
380 lines
11 KiB
YAML
- job:
|
|
name: puppet-beaker-rspec-infra-system-config
|
|
parent: puppet-beaker-rspec-infra
|
|
vars:
|
|
project_src_dir: "{{ zuul.project.src_dir }}/modules/openstack_project"
|
|
|
|
- job:
|
|
name: puppet-beaker-rspec-infra-centos-7-system-config
|
|
parent: puppet-beaker-rspec-centos-7-infra
|
|
vars:
|
|
project_src_dir: "{{ zuul.project.src_dir }}/modules/openstack_project"
|
|
|
|
- job:
|
|
name: puppet-beaker-rspec-puppet-4-infra-system-config
|
|
parent: puppet-beaker-rspec-puppet-4-infra
|
|
vars:
|
|
project_src_dir: "{{ zuul.project.src_dir }}/modules/openstack_project"
|
|
|
|
- job:
|
|
name: puppet-beaker-rspec-puppet-4-centos-7-infra-system-config
|
|
parent: puppet-beaker-rspec-puppet-4-infra
|
|
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.
|
|
#
|
|
# NOTE(ianw): 2018-08 have left off Fedora & OpenSUSE because
|
|
# no roles currently run on them.
|
|
- job:
|
|
name: system-config-zuul-role-integration
|
|
description: |
|
|
Test roles provided by system-config with Zuul
|
|
abstract: true
|
|
parent: base
|
|
run: roles-test/base.yaml
|
|
files:
|
|
- roles/.*
|
|
|
|
- job:
|
|
name: system-config-zuul-role-integration-centos-7
|
|
parent: system-config-zuul-role-integration
|
|
nodeset:
|
|
nodes:
|
|
- name: base
|
|
label: centos-7
|
|
- name: puppet4
|
|
label: centos-7
|
|
groups:
|
|
- name: puppet3
|
|
nodes:
|
|
- base
|
|
|
|
- job:
|
|
name: system-config-zuul-role-integration-trusty
|
|
parent: system-config-zuul-role-integration
|
|
nodeset:
|
|
nodes:
|
|
- name: base
|
|
label: ubuntu-trusty
|
|
- name: puppet4
|
|
label: ubuntu-trusty
|
|
groups:
|
|
- name: puppet3
|
|
nodes:
|
|
- base
|
|
|
|
- job:
|
|
name: system-config-zuul-role-integration-xenial
|
|
parent: system-config-zuul-role-integration
|
|
nodeset:
|
|
nodes:
|
|
- name: base
|
|
label: ubuntu-xenial
|
|
- name: puppet4
|
|
label: ubuntu-xenial
|
|
groups:
|
|
- name: puppet3
|
|
nodes:
|
|
- base
|
|
|
|
- job:
|
|
name: system-config-zuul-role-integration-bionic
|
|
parent: system-config-zuul-role-integration
|
|
nodeset:
|
|
nodes:
|
|
- name: base
|
|
label: ubuntu-bionic
|
|
groups:
|
|
- name: puppet5
|
|
nodes:
|
|
- base
|
|
|
|
- job:
|
|
name: system-config-zuul-role-integration-debian-stable
|
|
parent: system-config-zuul-role-integration
|
|
nodeset:
|
|
nodes:
|
|
- name: base
|
|
label: debian-stretch
|
|
|
|
- project-template:
|
|
name: system-config-zuul-role-integration
|
|
check:
|
|
jobs:
|
|
- system-config-zuul-role-integration-centos-7
|
|
- system-config-zuul-role-integration-trusty
|
|
- system-config-zuul-role-integration-xenial
|
|
- system-config-zuul-role-integration-bionic
|
|
- system-config-zuul-role-integration-debian-stable
|
|
gate:
|
|
jobs:
|
|
- system-config-zuul-role-integration-centos-7
|
|
- system-config-zuul-role-integration-trusty
|
|
- system-config-zuul-role-integration-xenial
|
|
- system-config-zuul-role-integration-bionic
|
|
- system-config-zuul-role-integration-debian-stable
|
|
|
|
- job:
|
|
name: system-config-run
|
|
description: |
|
|
Run the "base" playbook for system-config hosts.
|
|
|
|
This is a parent job designed to be inherited.
|
|
abstract: true
|
|
pre-run: playbooks/zuul/run-base-pre.yaml
|
|
run: playbooks/zuul/run-base.yaml
|
|
post-run: playbooks/zuul/run-base-post.yaml
|
|
vars:
|
|
install_ansible_ara_enable: true
|
|
|
|
- job:
|
|
name: system-config-run-base
|
|
parent: system-config-run
|
|
description: |
|
|
Run the "base" playbook on each of the node types
|
|
currently in use.
|
|
nodeset:
|
|
nodes:
|
|
- name: bridge.openstack.org
|
|
label: ubuntu-bionic
|
|
- name: trusty
|
|
label: ubuntu-trusty
|
|
- name: xenial
|
|
label: ubuntu-xenial
|
|
- name: bionic
|
|
label: ubuntu-bionic
|
|
- name: centos7
|
|
label: centos-7
|
|
host-vars:
|
|
trusty:
|
|
ansible_python_interpreter: python2
|
|
centos7:
|
|
ansible_python_interpreter: python2
|
|
files:
|
|
- .zuul.yaml
|
|
- playbooks/.*
|
|
- roles/.*
|
|
- testinfra/.*
|
|
|
|
- job:
|
|
name: system-config-run-base-ansible-devel
|
|
parent: system-config-run-base
|
|
description: |
|
|
Run the base playbook with the latest ansible
|
|
required-projects:
|
|
- name: github.com/ansible/ansible
|
|
override-checkout: devel
|
|
- name: openstack/openstacksdk
|
|
- name: openstack/ara
|
|
vars:
|
|
bridge_ansible_name: '{{ ansible_user_dir}}/src/github.com/ansible/ansible'
|
|
bridge_ansible_version: null
|
|
bridge_openstacksdk_name: '{{ ansible_user_dir }}/src/git.openstack.org/openstack/openstacksdk'
|
|
bridge_openstacksdk_version: null
|
|
bridge_ara_name: '{{ ansible_user_dir}}/src/git.openstack.org/openstack/ara'
|
|
bridge_ara_version: null
|
|
|
|
- job:
|
|
name: system-config-run-eavesdrop
|
|
parent: system-config-run
|
|
description: |
|
|
Run the playbook for an eavesdrop server.
|
|
nodeset:
|
|
nodes:
|
|
- name: bridge.openstack.org
|
|
label: ubuntu-bionic
|
|
- name: eavesdrop01.openstack.org
|
|
label: ubuntu-xenial
|
|
files:
|
|
- .zuul.yaml
|
|
- playbooks/group_vars/eavesdrop.yaml
|
|
- testinfra/test_eavesdrop.py
|
|
|
|
- job:
|
|
name: system-config-run-nodepool
|
|
parent: system-config-run
|
|
description: |
|
|
Run the playbook for nodepool.
|
|
nodeset:
|
|
nodes:
|
|
- name: bridge.openstack.org
|
|
label: ubuntu-bionic
|
|
- name: nl01.openstack.org
|
|
label: ubuntu-xenial
|
|
- name: nb01.openstack.org
|
|
label: ubuntu-xenial
|
|
files:
|
|
- .zuul.yaml
|
|
- playbooks/group_vars/nodepool.yaml
|
|
- playbooks/group_vars/nodepool-builder.yaml
|
|
- playbooks/group_vars/nodepool-launcher.yaml
|
|
- playbooks/roles/configure-openstacksdk/
|
|
- playbooks/templates/clouds/
|
|
- testinfra/test_nodepool.py
|
|
|
|
- job:
|
|
name: system-config-run-docker
|
|
parent: system-config-run
|
|
description: |
|
|
Test docker installation and setup
|
|
nodeset:
|
|
nodes:
|
|
- name: bridge.openstack.org
|
|
label: ubuntu-bionic
|
|
- name: bionic-docker
|
|
label: ubuntu-bionic
|
|
files:
|
|
- .zuul.yaml
|
|
- playbooks/roles/install-docker
|
|
- testinfra/test_docker.py
|
|
|
|
- job:
|
|
name: system-config-run-dns
|
|
parent: system-config-run
|
|
description: |
|
|
Run the playbook for dns.
|
|
nodeset:
|
|
nodes:
|
|
- name: bridge.openstack.org
|
|
label: ubuntu-bionic
|
|
- name: adns1.opendev.org
|
|
label: ubuntu-bionic
|
|
- name: ns1.opendev.org
|
|
label: ubuntu-bionic
|
|
files:
|
|
- .zuul.yaml
|
|
- playbooks/group_vars/adns.yaml
|
|
- playbooks/group_vars/dns.yaml
|
|
- ^playbooks/host_vars/(ad)?ns\d+.opendev.org.yaml
|
|
- playbooks/zuul/templates/group_vars/adns.yaml.j2
|
|
- playbooks/zuul/templates/group_vars/ns.yaml.j2
|
|
- playbooks/roles/master-nameserver/
|
|
- playbooks/roles/nameserver/
|
|
- testinfra/test_adns.py
|
|
- testinfra/test_ns.py
|
|
|
|
- job:
|
|
name: infra-prod-playbook
|
|
description: |
|
|
Run specified playbook against productions hosts.
|
|
|
|
This is a parent job designed to be inherited to enabled
|
|
CD deployment of our infrastructure. Set playbook_name to
|
|
specify the playbook relative to
|
|
bridge.openstack.org:/opt/system-config/playbooks
|
|
abstract: true
|
|
run: playbooks/zuul/run-production-playbook.yaml
|
|
vars:
|
|
ansible_forks: 5
|
|
nodeset:
|
|
nodes: []
|
|
|
|
- job:
|
|
name: infra-prod-zuul_reconfigure
|
|
parent: infra-prod-playbook
|
|
description: |
|
|
Perform a full Zuul reconfiguration.
|
|
|
|
This reloads the tenant config file and clears all configuration
|
|
caches.
|
|
vars:
|
|
playbook_name: zuul_reconfigure.yaml
|
|
|
|
- project:
|
|
templates:
|
|
- system-config-zuul-role-integration
|
|
- infra-puppet-apply-jobs
|
|
- infra-logstash-filter-jobs
|
|
- publish-tox-docs-infra
|
|
check:
|
|
jobs:
|
|
- tox-linters
|
|
- legacy-system-config-puppet-syntax-3
|
|
- puppet-beaker-rspec-infra-system-config
|
|
- puppet-beaker-rspec-infra-centos-7-system-config
|
|
- puppet-beaker-rspec-puppet-4-infra-system-config
|
|
- puppet-beaker-rspec-puppet-4-centos-7-infra-system-config
|
|
- system-config-run-base
|
|
- system-config-run-base-ansible-devel:
|
|
voting: false
|
|
- system-config-run-dns
|
|
- system-config-run-eavesdrop
|
|
- system-config-run-nodepool
|
|
- system-config-run-docker
|
|
gate:
|
|
jobs:
|
|
- tox-linters
|
|
- legacy-system-config-puppet-syntax-3
|
|
- puppet-beaker-rspec-infra-system-config
|
|
- puppet-beaker-rspec-infra-centos-7-system-config
|
|
- puppet-beaker-rspec-puppet-4-infra-system-config
|
|
- puppet-beaker-rspec-puppet-4-centos-7-infra-system-config
|
|
- system-config-run-base
|
|
- system-config-run-dns
|
|
- system-config-run-eavesdrop
|
|
- system-config-run-nodepool
|
|
- system-config-run-docker
|