diff options
| author | Michal Nasiadka <mnasiadka@gmail.com> | 2025-09-15 14:29:39 +0200 |
|---|---|---|
| committer | Michal Nasiadka <mnasiadka@gmail.com> | 2025-09-22 11:52:00 +0000 |
| commit | 5c087f54cff9a7c7fd3d5a6fd3ce622ee415f694 (patch) | |
| tree | 415e5214457c7274bebf7940a683aecea4479dc9 /zuul.d/base.yaml | |
| parent | ad5a7200ae5c8f0721a23cde199b0d26c4d52ee7 (diff) | |
| download | kolla-ansible-5c087f54cff9a7c7fd3d5a6fd3ce622ee415f694.tar.gz kolla-ansible-5c087f54cff9a7c7fd3d5a6fd3ce622ee415f694.zip | |
CI: Reorganise scenarios into project templates
This patch moves into using project templates, which is easier
to organise.
base_distro and upgrade variables are derived from base.yaml
and respective job name - so don't need to be specified in each
job anymore.
All jobs will now also have an OS release specified, so it's easier
to add different OS release jobs (e.g. when backporting new release
support to stable branch).
Change-Id: I1f08f9b9064d9f7e95b07944db0e7ebac3120c57
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
Diffstat (limited to 'zuul.d/base.yaml')
| -rw-r--r-- | zuul.d/base.yaml | 374 |
1 files changed, 9 insertions, 365 deletions
diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index 8bc43be5b..4d9d263dd 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -6,7 +6,8 @@ # Test latest ansible-core version on Ubuntu, minimum supported on others. # Use SLURP version (two releases back) on SLURP upgrades. ansible_core_version_constraint: >- - {{ ansible_core_version_slurp if is_slurp else ansible_core_version_min if is_upgrade or ansible_facts.distribution != "Ubuntu" else ansible_core_version_max }} + {{ ansible_core_version_slurp if is_slurp else ansible_core_version_min if + (is_upgrade or ansible_facts.distribution != "Ubuntu") else ansible_core_version_max }} ansible_core_version_slurp: "==2.16.*" ansible_core_version_max: "==2.18.*" ansible_core_version_min: "==2.17.*" @@ -14,21 +15,23 @@ api_interface_name: "vxlan-0" api_network_prefix: "192.0.2." api_network_prefix_length: "24" + base_distro: "{{ zuul.job.split('-').2 }}" configure_swap_size: 0 container_engine: "docker" - is_upgrade: false - is_slurp: false + is_upgrade: "{{ 'upgrade' in zuul.job }}" + is_slurp: "{{ 'slurp' in zuul.job }}" kolla_internal_vip_address: "192.0.2.10" le_enabled: false neutron_external_bridge_name: br-0 - neutron_external_interface_name: "veth-{{ neutron_external_bridge_name }}-ext" + neutron_external_interface_name: >- + veth-{{ neutron_external_bridge_name }}-ext neutron_external_network_prefix: "198.51.100." neutron_external_network_prefix_length: "24" neutron_external_vxlan_interface_name: "vxlan-1" neutron_tenant_network_dns_server: "8.8.8.8" neutron_tenant_network_prefix: "203.0.113." neutron_tenant_network_prefix_length: "24" - previous_release: "2025.1" + previous_release: "{{ '2025.1' if is_slurp else '2025.1' }}" scenario: core scenario_images_core: - ^cron @@ -48,7 +51,7 @@ - ^placement - ^proxysql - ^rabbitmq - tls_enabled: false + tls_enabled: true virt_type: qemu - job: @@ -95,362 +98,3 @@ - ^tests/get_logs.sh - ^tests/(pre|run).yml - ^tests/templates/(inventory|globals-default.j2) - -- job: - name: kolla-ansible-kvm-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(nova-cell)/ - - ^tests/templates/nova-compute-overrides.j2 - vars: - virt_type: kvm - -- job: - name: kolla-ansible-ipv6-base - parent: kolla-ansible-base - voting: false - vars: - api_network_prefix: "fd::" - api_network_prefix_length: "64" - kolla_internal_vip_address: "fd::ff:0" - neutron_external_network_prefix: "fd:1::" - neutron_external_network_prefix_length: "64" - neutron_tenant_network_prefix: "fd:f0::" - neutron_tenant_network_prefix_length: "64" - neutron_tenant_network_dns_server: 2001:4860:4860::8888 - address_family: 'ipv6' - scenario: ipv6 - -- job: - name: kolla-ansible-bifrost-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/bifrost/ - - ^tests/test-bifrost.sh - vars: - scenario: bifrost - scenario_images_core: - - ^bifrost - -- job: - name: kolla-ansible-ironic-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(ironic|neutron|nova|nova-cell)/ - - ^tests/deploy-tenks\.sh$ - - ^tests/templates/ironic-overrides\.j2$ - - ^tests/templates/tenks-deploy-config\.yml\.j2$ - - ^tests/test-dashboard\.sh$ - - ^tests/test-ironic\.sh$ - required-projects: - - openstack/tenks - vars: - scenario: ironic - scenario_images_extra: - - ^dnsmasq - - ^ironic - - ^iscsid - - ^prometheus - -- job: - name: kolla-ansible-zun-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(zun|kuryr|etcd|cinder|iscsi)/ - - ^tests/setup_disks.sh - - ^tests/test-core-openstack.sh - - ^tests/test-zun.sh - - ^tests/test-dashboard.sh - vars: - scenario: zun - scenario_images_extra: - - ^zun - - ^kuryr - - ^etcd - - ^cinder - - ^iscsid - - ^tgtd - -- job: - name: kolla-ansible-swift-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(glance|swift)/ - - ^tests/setup_disks.sh - - ^tests/init-swift.sh - - ^tests/test-core-openstack.sh - - ^tests/test-dashboard.sh - - ^tests/test-swift.sh - vars: - scenario: swift - scenario_images_extra: - - ^swift - -- job: - name: kolla-ansible-cephadm-base - parent: kolla-ansible-base - voting: false - vars: - scenario: cephadm - scenario_images_extra: - - ^cinder - - ^redis - -- job: - name: kolla-ansible-magnum-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(designate|magnum|trove)/ - - ^tests/test-dashboard.sh - - ^tests/test-magnum.sh - vars: - scenario: magnum - scenario_images_extra: - - ^designate - - ^magnum - - ^trove - -- job: - name: kolla-ansible-octavia-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(octavia|octavia-certificates)/ - - ^tests/test-dashboard.sh - - ^tests/test-octavia.sh - vars: - scenario: octavia - scenario_images_extra: - - ^redis - - ^octavia - -- job: - name: kolla-ansible-masakari-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/masakari/ - - ^ansible/roles/hacluster/ - - ^tests/test-masakari.sh - - ^tests/test-dashboard.sh - vars: - scenario: masakari - scenario_images_extra: - - ^masakari - - ^hacluster - -- job: - name: kolla-ansible-mariadb-base - parent: kolla-ansible-scenario-base - voting: true - files: !inherit - - ^ansible/roles/(loadbalancer|mariadb|proxysql-config)/ - - ^tests/test-mariadb.sh - vars: - scenario: mariadb - scenario_images_core: - - ^cron - - ^fluentd - - ^haproxy - - ^keepalived - - ^kolla-toolbox - - ^mariadb - - ^proxysql - -- job: - name: kolla-ansible-scenario-nfv-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(aodh|barbican|heat|mistral|redis|tacker)/ - - ^tests/test-scenario-nfv.sh - - ^tests/test-dashboard.sh - vars: - scenario: scenario_nfv - scenario_images_extra: - - ^aodh - - ^tacker - - ^mistral - - ^redis - - ^barbican - -- job: - name: kolla-ansible-cells-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/nova/ - - ^ansible/roles/nova-cell/ - - ^ansible/roles/loadbalancer/ - - ^tests/test-core-openstack.sh - - ^tests/test-proxysql.sh - vars: - scenario: cells - scenario_images_extra: - - ^proxysql - -- job: - name: kolla-ansible-ovn-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(neutron|octavia|openvswitch|ovn-controller|ovn-db)/ - - ^tests/test-ovn.sh - - ^tests/test-core-openstack.sh - - ^tests/reconfigure.sh - vars: - scenario: ovn - scenario_images_extra: - - ^redis - - ^octavia - - ^ovn - -- job: - name: kolla-ansible-prometheus-opensearch-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/site.yml - - ^ansible/roles/(common|opensearch|grafana|prometheus)/ - - ^tests/test-prometheus-opensearch.sh - vars: - scenario: prometheus-opensearch - scenario_images_core: - - ^cron - - ^fluentd - - ^grafana - - ^haproxy - - ^keepalived - - ^kolla-toolbox - - ^mariadb - - ^memcached - - ^opensearch - - ^prometheus - - ^proxysql - - ^rabbitmq - -- job: - name: kolla-ansible-venus-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(common|opensearch|venus)/ - - ^tests/test-venus.sh - vars: - scenario: venus - scenario_images_core: - - ^cron - - ^opensearch - - ^fluentd - - ^haproxy - - ^keepalived - - ^keystone - - ^kolla-toolbox - - ^mariadb - - ^memcached - - ^rabbitmq - - ^venus - -- job: - name: kolla-ansible-hashi-vault-base - parent: kolla-ansible-variables - run: tests/run-hashi-vault.yml - required-projects: - - openstack/kolla-ansible - - openstack/requirements - voting: false - files: - - ^requirements-core.yml - - ^tests/templates/(inventory|globals-default.j2) - - ^tests/(pre|run).yml - - ^kolla_ansible/ - - ^tests/run-hashi-vault.yml - - ^tests/test-hashicorp-vault-passwords.sh - -- job: - name: kolla-ansible-haproxy-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/haproxy/ - - ^ansible/roles/loadbalancer/ - - ^kolla_ansible/kolla_url.py - vars: - external_api_interface_name: vxlan2 - external_api_network_prefix: "192.0.3." - external_api_network_prefix_length: "24" - kolla_external_vip_address: "192.0.3.10" - scenario: haproxy - -- job: - name: kolla-ansible-lets-encrypt-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/common/templates/conf/input/11-letsencrypt.conf.j2 - - ^ansible/roles/(letsencrypt|loadbalancer)/ - - ^tests/test-core-openstack.sh - - ^tests/test-dashboard.sh - - ^tests/deploy.sh - vars: - scenario: lets-encrypt - scenario_images_extra: - - ^letsencrypt - - ^haproxy - tls_enabled: true - le_enabled: true - -- job: - name: kolla-ansible-skyline-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/skyline/ - - ^tests/test-skyline.sh - vars: - scenario: skyline - scenario_images_extra: - - ^skyline - -- job: - name: kolla-ansible-skyline-sso-base - parent: kolla-ansible-scenario-base - voting: false - files: - - ^ansible/roles/skyline/ - - ^tests/test-skyline-sso.sh - vars: - scenario: skyline-sso - scenario_images_extra: - - ^skyline - -- job: - name: kolla-ansible-telemetry-base - parent: kolla-ansible-scenario-base - voting: false - files: - - ^ansible/roles/(aodh|ceilometer|gnocchi)/ - - ^tests/test-telemetry.sh - vars: - scenario: telemetry - scenario_images_extra: - - ^aodh - - ^ceilometer - - ^gnocchi - -- job: - name: kolla-ansible-container-engine-migration-base - parent: kolla-ansible-base - voting: false - files: - - ^ansible/migrate-container-engine.yml - - ^ansible/roles/container-engine-migration/ - - ^tests/test-container-engine-migration.sh - vars: - scenario: container-engine-migration |
