From fd71b42ed26808abf55a6561371aa3172d56d43f Mon Sep 17 00:00:00 2001 From: "Dr. Jens Harbott" Date: Sat, 31 May 2025 04:03:57 +0000 Subject: [PATCH 1/8] Revert "zuul: make failing job temporarily non-voting" This reverts commit 2b42c958effd29d7bb397c5ef79de4a58911d14f. Reason for revert: Make job voting again Change-Id: Ie3583682ec0d7a55cd9e8bedde9f51550b7c1840 Signed-off-by: Michal Nasiadka --- .zuul.d/debian.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.zuul.d/debian.yaml b/.zuul.d/debian.yaml index e4acbc50f5..adfb3811e2 100644 --- a/.zuul.d/debian.yaml +++ b/.zuul.d/debian.yaml @@ -5,8 +5,7 @@ - kolla-build-debian - kolla-build-debian-podman - kolla-ansible-debian - - kolla-ansible-debian-upgrade: - voting: false + - kolla-ansible-debian-upgrade check-arm64: jobs: - kolla-build-debian-aarch64 @@ -16,7 +15,7 @@ - kolla-build-debian - kolla-build-debian-podman - kolla-ansible-debian - # - kolla-ansible-debian-upgrade + - kolla-ansible-debian-upgrade periodic: jobs: - kolla-publish-debian-quay From cabc3627e84e93453858eac1a310e89f918d6c83 Mon Sep 17 00:00:00 2001 From: Bartosz Bezak Date: Wed, 20 Aug 2025 15:18:50 +0200 Subject: [PATCH 2/8] [release] Use Flamingo Ubuntu Cloud Archive Change-Id: I92f3095b2d51bd6ac7ff48b0c7d79852eccc9803 Signed-off-by: Bartosz Bezak --- docker/base/sources.list.ubuntu | 2 +- docker/base/sources.list.ubuntu.aarch64 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/base/sources.list.ubuntu b/docker/base/sources.list.ubuntu index f0d1f4e371..6542433e39 100644 --- a/docker/base/sources.list.ubuntu +++ b/docker/base/sources.list.ubuntu @@ -8,7 +8,7 @@ deb mirror://mirrors.ubuntu.com/mirrors.txt noble-security main universe # We need to add the repo for the updated packages they provide. The main ones # are qemu, libvirt, and openvswitch. -deb http://ubuntu-cloud.archive.canonical.com/ubuntu noble-updates/epoxy main +deb http://ubuntu-cloud.archive.canonical.com/ubuntu noble-updates/flamingo main # NOTE(hrw): extra repositories are added into image when they are needed as # separate files in /etc/apt/sources.list.d/ directory. For that purpose they diff --git a/docker/base/sources.list.ubuntu.aarch64 b/docker/base/sources.list.ubuntu.aarch64 index 0aba905238..d4cfbe20f5 100644 --- a/docker/base/sources.list.ubuntu.aarch64 +++ b/docker/base/sources.list.ubuntu.aarch64 @@ -8,7 +8,7 @@ deb http://ports.ubuntu.com/ noble-backports main universe # We need to add the repo for the updated packages they provide. The main ones # are qemu, libvirt, and openvswitch. -deb http://ubuntu-cloud.archive.canonical.com/ubuntu noble-updates/epoxy main +deb http://ubuntu-cloud.archive.canonical.com/ubuntu noble-updates/flamingo main # NOTE(hrw): extra repositories are added into image when they are needed as # separate files in /etc/apt/sources.list.d/ directory. For that purpose they From da1f630158a2aeca53300501188942071dcb4c64 Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Tue, 26 Aug 2025 19:06:57 +0200 Subject: [PATCH 3/8] CI: Drop dump_info.sh It should not be required anymore, all these information are dumped by different means (generic zuul playbooks, etc). Change-Id: I80569b6fe9e4d779a5448015b8ad9caf09e5abf6 Signed-off-by: Michal Nasiadka --- roles/kolla-build-deps/tasks/main.yml | 6 ------ tests/playbooks/post.yml | 6 ------ tools/dump_info.sh | 26 -------------------------- 3 files changed, 38 deletions(-) delete mode 100755 tools/dump_info.sh diff --git a/roles/kolla-build-deps/tasks/main.yml b/roles/kolla-build-deps/tasks/main.yml index a3fcd14730..490f13edf6 100644 --- a/roles/kolla-build-deps/tasks/main.yml +++ b/roles/kolla-build-deps/tasks/main.yml @@ -7,12 +7,6 @@ owner: zuul group: zuul -- name: Dump host info to logs - ansible.builtin.command: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/tools/dump_info.sh" - args: - chdir: "{{ kolla_logs_dir }}" - changed_when: true - - name: Create dir for kolla build logs ansible.builtin.file: path: "{{ kolla_build_logs_dir }}" diff --git a/tests/playbooks/post.yml b/tests/playbooks/post.yml index 0306638103..a5998468b3 100644 --- a/tests/playbooks/post.yml +++ b/tests/playbooks/post.yml @@ -2,12 +2,6 @@ - name: Zuul post hosts: all tasks: - - name: Dump host info to logs - ansible.builtin.command: "{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/tools/dump_info.sh" - args: - chdir: "{{ kolla_logs_dir }}" - changed_when: true - - name: Collect various info to logs changed_when: true ansible.builtin.shell: diff --git a/tools/dump_info.sh b/tools/dump_info.sh deleted file mode 100755 index 26158653bc..0000000000 --- a/tools/dump_info.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -set -o xtrace - -function dump_node_info { - # NOTE(SamYaple): function for debugging gate - set +o errexit - local OLD_PATH="${PATH}" - PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" - sudo parted -l - - sudo mount - - df -h - - uname -a - - cat /etc/*release* - - cat /proc/meminfo - - PATH="${OLD_PATH}" - set -o errexit -} - -(dump_node_info 2>&1) > node_info_$(date +%s) From 5781b359efc32726645a7d5d5570bcec9f0035fa Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Wed, 30 Apr 2025 08:45:56 +0200 Subject: [PATCH 4/8] Remove RDO/Delorean RDO has staffing problems and has decided to only support SLURP releases - let's drop reliance on that repository. Change-Id: I56f86a1c5262e3ee2bcbb52cae53c3b2655ed87f Signed-off-by: Michal Nasiadka --- doc/source/admin/image-building.rst | 15 ++++----------- doc/source/contributor/release-management.rst | 17 ----------------- docker/base/Dockerfile.j2 | 19 +++++-------------- docker/kolla-toolbox/Dockerfile.j2 | 4 ++-- docker/kuryr/kuryr-libnetwork/Dockerfile.j2 | 2 +- docker/manila/manila-base/Dockerfile.j2 | 2 +- docker/neutron/neutron-base/Dockerfile.j2 | 4 ++-- docker/nova/nova-base/Dockerfile.j2 | 4 ++-- docker/nova/nova-libvirt/Dockerfile.j2 | 2 +- docker/octavia/octavia-base/Dockerfile.j2 | 16 +++++++++++++--- docker/openstack-base/Dockerfile.j2 | 2 +- .../openvswitch-base/Dockerfile.j2 | 6 ++---- docker/ovn/ovn-base/Dockerfile.j2 | 2 +- docker/ovn/ovn-controller/Dockerfile.j2 | 2 +- docker/ovn/ovn-nb-db-server/Dockerfile.j2 | 2 +- docker/ovn/ovn-northd/Dockerfile.j2 | 2 +- docker/ovn/ovn-sb-db-server/Dockerfile.j2 | 2 +- docker/zun/zun-cni-daemon/Dockerfile.j2 | 2 +- kolla/common/config.py | 6 +----- .../notes/drop-delorean-c0bd3229162faef0.yaml | 5 +++++ tests/templates/template_overrides.j2 | 14 +------------- 21 files changed, 47 insertions(+), 83 deletions(-) create mode 100644 releasenotes/notes/drop-delorean-c0bd3229162faef0.yaml diff --git a/doc/source/admin/image-building.rst b/doc/source/admin/image-building.rst index d249008b9e..793367a92f 100644 --- a/doc/source/admin/image-building.rst +++ b/doc/source/admin/image-building.rst @@ -683,23 +683,16 @@ Red Hat Kolla allows the operator to build containers using custom repos. The repos are accepted as a list of comma separated values and can be in the -form of ``.repo``, ``.rpm``, or a url. See examples below. - -To use current RDO packages (aka Delorean or DLRN), update ``rpm_setup_config`` -in ``kolla-build.conf``: - -.. path /etc/kolla/kolla-build.conf -.. code-block:: ini - - rpm_setup_config = https://trunk.rdoproject.org/centos8/current/delorean.repo,https://trunk.rdoproject.org/centos8/delorean-deps.repo +form of ``.repo``, ``.rpm``, or a url. If specifying a ``.repo`` file, each ``.repo`` file will need to exist in the -same directory as the base Dockerfile (``kolla/docker/base``): +same directory as the base Dockerfile (``kolla/docker/base``) or you need to +specify a url: .. path kolla/docker/base .. code-block:: ini - rpm_setup_config = epel.repo,delorean.repo,delorean-deps.repo + rpm_setup_config = epel.repo,https://remote-server.com/your-repo.repo Debian / Ubuntu ^^^^^^^^^^^^^^^ diff --git a/doc/source/contributor/release-management.rst b/doc/source/contributor/release-management.rst index 460fac010c..441bf39077 100644 --- a/doc/source/contributor/release-management.rst +++ b/doc/source/contributor/release-management.rst @@ -152,11 +152,6 @@ R-8: Switch images to current release .. note:: Debian does not provide repositories for the in-development release until much later in the cycle. -* [kolla] Switch CentOS images to use the current in-development release - master RDO Delorean repository - - * example: https://review.opendev.org/c/openstack/kolla/+/804269 - * [kolla] Switch Ubuntu images to use the current in-development release Ubuntu Cloud Archive (UCA) repository @@ -237,11 +232,6 @@ Prior to creating an RC1 release candidate: * example: TODO -* [kolla] Switch CentOS images to use the current in-development release - stable RDO Delorean repository - - * example: https://review.opendev.org/c/openstack/kolla/+/787339 - R-0: Kolla & Kolla Ansible RC1 & stable branch creation ------------------------------------------------------- @@ -407,13 +397,6 @@ Several tasks are required to finalise the stable branch for release. * example: https://review.opendev.org/c/openstack/kolla-ansible/+/788292 -* [kolla] Switch CentOS images to use the CentOS Cloud SIG repository for the - new release - - .. note:: This needs to be done on the stable branch. - - * example: https://review.opendev.org/c/openstack/kolla/+/788490 - * [kolla] Switch Debian images to use the Debian OpenStack repository for the new release diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2 index 638aa8a684..0191de53a2 100644 --- a/docker/base/Dockerfile.j2 +++ b/docker/base/Dockerfile.j2 @@ -39,6 +39,9 @@ ENV PS1="$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(ho # enables to provide repo overrides at a later date in a simple fashion if we # desire such functionality. I think we will :) +ENV KOLLA_RPM_OVS_VERSION=3.5 \ + KOLLA_RPM_OVN_VERSION=25.03 + RUN cat /tmp/kolla_bashrc >> /etc/bashrc \ && sed -i 's|^\(override_install_langs=.*\)|# \1|' /etc/dnf/dnf.conf @@ -142,29 +145,15 @@ RUN rm -f /etc/rpm/macros.image-language-conf \ {% set base_centos_yum_repos_to_enable = [ ] %} -# FIXME(hrw): entries not starting with 'centos-' (and 'centos-nfv-ovs') are -# from delorean or rdo-release-* package -# https://review.rdoproject.org/r/c/rdo-infra/ansible-role-dlrn/+/33241 {% set base_centos_yum_repos_to_disable = [ 'centos-ceph-squid', 'centos-nfv-openvswitch', - 'centos10-nfv-ovs', - 'centos10-rabbitmq', - 'centos10-storage', 'epel', 'influxdb', 'opensearch-3.x', 'opensearch-dashboards-3.x', ] %} -{% if base_arch == 'aarch64' %} - -{# NOTE(hrw): delorean-deps.repo may force x86-64 repos #} - -RUN sed -i -e "s/x86_64/aarch64/g" /etc/yum.repos.d/delorean-deps.repo - -{% endif %} - RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("centos_yum_repo_packages"), chain=True, clean=False) }} {%- for repo in base_centos_yum_repos_to_enable | customizable('centos_yum_repos_to_enable') %} && dnf config-manager --enable {{ repo }} {% endfor -%} @@ -207,7 +196,9 @@ RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("cen ] %} # Install base packages +{{ macros.enable_extra_repos(['epel']) }} {{ macros.install_packages( base_centos_packages | customizable("centos_packages") | customizable("centos_binary_packages") | customizable("centos_source_packages") ) }} +{{ macros.disable_extra_repos(['epel']) }} {# endif for base_package_type rpm #} {% elif base_package_type == 'deb' %} diff --git a/docker/kolla-toolbox/Dockerfile.j2 b/docker/kolla-toolbox/Dockerfile.j2 index 042d98f16d..ca4b8601d6 100644 --- a/docker/kolla-toolbox/Dockerfile.j2 +++ b/docker/kolla-toolbox/Dockerfile.j2 @@ -13,7 +13,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {{ macros.configure_user(name='ansible') }} {{ macros.configure_user(name='rabbitmq') }} -{{ macros.enable_extra_repos(['crb', 'erlang', 'openvswitch', 'rabbitmq']) }} +{{ macros.enable_extra_repos(['crb', 'epel', 'erlang', 'openvswitch', 'rabbitmq']) }} {% block rabbitmq_apt_preferences %} {% if base_package_type == 'deb' %} @@ -34,7 +34,7 @@ COPY apt_preferences_rabbitmq.{{ base_distro }} /etc/apt/preferences.d/rabbitmq 'make', 'openssh-clients', 'openssl-devel', - 'openvswitch', + 'openvswitch${KOLLA_RPM_OVS_VERSION}', 'python3', 'python3-devel', 'rabbitmq-server-4.1.*' diff --git a/docker/kuryr/kuryr-libnetwork/Dockerfile.j2 b/docker/kuryr/kuryr-libnetwork/Dockerfile.j2 index 6d0bed487b..bbc1d0801e 100644 --- a/docker/kuryr/kuryr-libnetwork/Dockerfile.j2 +++ b/docker/kuryr/kuryr-libnetwork/Dockerfile.j2 @@ -12,7 +12,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set kuryr_libnetwork_packages = [ - 'openvswitch' + 'openvswitch${KOLLA_RPM_OVS_VERSION}' ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/manila/manila-base/Dockerfile.j2 b/docker/manila/manila-base/Dockerfile.j2 index 0580cccbc3..fde3989dfd 100644 --- a/docker/manila/manila-base/Dockerfile.j2 +++ b/docker/manila/manila-base/Dockerfile.j2 @@ -12,7 +12,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} - {% set manila_base_packages = ['openvswitch'] %} + {% set manila_base_packages = ['openvswitch${KOLLA_RPM_OVS_VERSION}'] %} {% elif base_package_type == 'deb' %} diff --git a/docker/neutron/neutron-base/Dockerfile.j2 b/docker/neutron/neutron-base/Dockerfile.j2 index 267dac3fa7..3e4ef5a152 100644 --- a/docker/neutron/neutron-base/Dockerfile.j2 +++ b/docker/neutron/neutron-base/Dockerfile.j2 @@ -24,8 +24,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'iputils', 'keepalived', 'net-tools', - 'openvswitch', - 'python3-openvswitch', + 'openvswitch${KOLLA_RPM_OVS_VERSION}', + 'python3-openvswitch${KOLLA_RPM_OVS_VERSION}', 'radvd', 'uuid' ] %} diff --git a/docker/nova/nova-base/Dockerfile.j2 b/docker/nova/nova-base/Dockerfile.j2 index 7027479767..747393944b 100644 --- a/docker/nova/nova-base/Dockerfile.j2 +++ b/docker/nova/nova-base/Dockerfile.j2 @@ -13,8 +13,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set nova_base_packages = [ - 'openvswitch', - 'python3-openvswitch' + 'openvswitch${KOLLA_RPM_OVS_VERSION}', + 'python3-openvswitch${KOLLA_RPM_OVS_VERSION}' ] %} {% if base_arch == 'x86_64' %} {% set nova_base_packages = nova_base_packages + [ diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2 index 2942ede41f..ea165b1005 100644 --- a/docker/nova/nova-libvirt/Dockerfile.j2 +++ b/docker/nova/nova-libvirt/Dockerfile.j2 @@ -23,7 +23,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build 'libvirt-daemon-config-nwfilter', 'libvirt-daemon-driver-nwfilter', 'libvirt-daemon-driver-nodedev', - 'openvswitch', + 'openvswitch${KOLLA_RPM_OVS_VERSION}', 'qemu-img', 'qemu-kvm', 'swtpm', diff --git a/docker/octavia/octavia-base/Dockerfile.j2 b/docker/octavia/octavia-base/Dockerfile.j2 index e036a4af7d..5c03274704 100644 --- a/docker/octavia/octavia-base/Dockerfile.j2 +++ b/docker/octavia/octavia-base/Dockerfile.j2 @@ -10,9 +10,19 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {{ macros.enable_extra_repos(['openvswitch']) }} {{ macros.configure_user(name='octavia') }} -{% set octavia_base_packages = [ - 'python3-openvswitch' -] %} +{% if base_package_type == 'rpm' %} + + {% set octavia_base_packages = [ + 'python3-openvswitch${KOLLA_RPM_OVS_VERSION}' + ] %} + +{% elif base_package_type == 'deb' %} + + {% set octavia_base_packages = [ + 'python3-openvswitch' + ] %} + +{% endif %} {{ macros.install_packages(octavia_base_packages | customizable("packages")) }} diff --git a/docker/openstack-base/Dockerfile.j2 b/docker/openstack-base/Dockerfile.j2 index 01dadfcdd8..21fe573d23 100644 --- a/docker/openstack-base/Dockerfile.j2 +++ b/docker/openstack-base/Dockerfile.j2 @@ -7,7 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% import "macros.j2" as macros with context %} -{{ macros.enable_extra_repos(['crb']) }} +{{ macros.enable_extra_repos(['crb', 'epel']) }} {% if base_package_type == 'rpm' %} {% set openstack_base_packages = [ diff --git a/docker/openvswitch/openvswitch-base/Dockerfile.j2 b/docker/openvswitch/openvswitch-base/Dockerfile.j2 index 7f79cb8188..1a40e846ea 100644 --- a/docker/openvswitch/openvswitch-base/Dockerfile.j2 +++ b/docker/openvswitch/openvswitch-base/Dockerfile.j2 @@ -14,16 +14,14 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set openvswitch_base_packages = [ 'libibverbs', - 'openvswitch', - 'python3-netifaces', - 'python3-openvswitch', + 'openvswitch${KOLLA_RPM_OVS_VERSION}', + 'python3-openvswitch${KOLLA_RPM_OVS_VERSION}', 'tcpdump' ] %} {% elif base_package_type == 'deb' %} {% set openvswitch_base_packages = [ 'openvswitch-switch', 'python3-openvswitch', - 'python3-netifaces', 'tcpdump' ] %} {% endif %} diff --git a/docker/ovn/ovn-base/Dockerfile.j2 b/docker/ovn/ovn-base/Dockerfile.j2 index 83e1c8dc83..0871383d3e 100644 --- a/docker/ovn/ovn-base/Dockerfile.j2 +++ b/docker/ovn/ovn-base/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set ovn_base_packages = [ - 'openvswitch-ovn-common', + 'ovn${KOLLA_RPM_OVN_VERSION}', ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/ovn/ovn-controller/Dockerfile.j2 b/docker/ovn/ovn-controller/Dockerfile.j2 index c8ef96b24b..8dfcb163d3 100644 --- a/docker/ovn/ovn-controller/Dockerfile.j2 +++ b/docker/ovn/ovn-controller/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set ovn_controller_packages = [ - 'openvswitch-ovn-host' + 'ovn${KOLLA_RPM_OVN_VERSION}-host' ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/ovn/ovn-nb-db-server/Dockerfile.j2 b/docker/ovn/ovn-nb-db-server/Dockerfile.j2 index cbd7ca01dd..05d99d437c 100644 --- a/docker/ovn/ovn-nb-db-server/Dockerfile.j2 +++ b/docker/ovn/ovn-nb-db-server/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set ovn_nb_db_server_packages = [ - 'openvswitch-ovn-central', + 'ovn${KOLLA_RPM_OVN_VERSION}-central', ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/ovn/ovn-northd/Dockerfile.j2 b/docker/ovn/ovn-northd/Dockerfile.j2 index 3a151e0b86..2d1a873dc4 100644 --- a/docker/ovn/ovn-northd/Dockerfile.j2 +++ b/docker/ovn/ovn-northd/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set ovn_northd_packages = [ - 'openvswitch-ovn-central', + 'ovn${KOLLA_RPM_OVN_VERSION}-central', ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/ovn/ovn-sb-db-server/Dockerfile.j2 b/docker/ovn/ovn-sb-db-server/Dockerfile.j2 index 07f8349934..96d27ce1fd 100644 --- a/docker/ovn/ovn-sb-db-server/Dockerfile.j2 +++ b/docker/ovn/ovn-sb-db-server/Dockerfile.j2 @@ -9,7 +9,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set ovn_sb_db_server_packages = [ - 'openvswitch-ovn-central', + 'ovn${KOLLA_RPM_OVN_VERSION}-central', ] %} {% elif base_package_type == 'deb' %} diff --git a/docker/zun/zun-cni-daemon/Dockerfile.j2 b/docker/zun/zun-cni-daemon/Dockerfile.j2 index 02cc9b2bef..3534f8f3e6 100644 --- a/docker/zun/zun-cni-daemon/Dockerfile.j2 +++ b/docker/zun/zun-cni-daemon/Dockerfile.j2 @@ -10,7 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% if base_package_type == 'rpm' %} {% set zun_cni_daemon_packages = [ - 'openvswitch' + 'openvswitch${KOLLA_RPM_OVS_VERSION}' ] %} {% elif base_package_type == 'deb' %} diff --git a/kolla/common/config.py b/kolla/common/config.py index 8e9175ae86..aec1e9d8c4 100644 --- a/kolla/common/config.py +++ b/kolla/common/config.py @@ -39,10 +39,6 @@ } OPENSTACK_RELEASE = 'master' -# This is noarch repository so we will use it on all architectures -DELOREAN_DEPS = "https://trunk.rdoproject.org/centos10-master/" \ - "delorean-deps.repo" - # TODO(mandre) check for file integrity instead of downloading from an HTTPS # source TARBALLS_BASE = "https://tarballs.opendev.org" @@ -283,7 +279,7 @@ help=('Set the package type of the distro. If not set then ' 'the packaging type is set to "rpm" if a RHEL based ' 'distro and "deb" if a Debian based distro.')), - cfg.ListOpt('rpm_setup_config', default=[DELOREAN_DEPS], + cfg.ListOpt('rpm_setup_config', default=[], help=('Comma separated list of .rpm or .repo file(s) ' 'or URL(s) to install before building containers')), cfg.StrOpt('apt_sources_list', help=('Path to custom sources.list')), diff --git a/releasenotes/notes/drop-delorean-c0bd3229162faef0.yaml b/releasenotes/notes/drop-delorean-c0bd3229162faef0.yaml new file mode 100644 index 0000000000..069419a2ba --- /dev/null +++ b/releasenotes/notes/drop-delorean-c0bd3229162faef0.yaml @@ -0,0 +1,5 @@ +--- +upgrade: + - | + Drops requirement to use ``Delorean/CentOS Cloud SIG`` repositories in + rpm-based images. diff --git a/tests/templates/template_overrides.j2 b/tests/templates/template_overrides.j2 index 9ab0f16fbb..69c54f668b 100644 --- a/tests/templates/template_overrides.j2 +++ b/tests/templates/template_overrides.j2 @@ -35,15 +35,6 @@ RUN cd /etc/yum.repos.d/ && mkdir not-for-ci/ \ {% endraw %} {% raw %} -{% block base_centos_repo_overrides_post_rpm %} -{% endraw %} - -RUN sed -i \ - -e "s|https://trunk.rdoproject.org|{{ nodepool_rdo_proxy }}|g" \ - /etc/yum.repos.d/delorean*.repo - -{% raw %} -{% endblock %} {% block base_centos_repo_overrides_post_yum -%} {%- endraw -%} @@ -98,10 +89,7 @@ RUN if [ -d /etc/yum.repos.d/not-for-ci/ ]; then \ rm ci-{{ base_distro }}.repo && \ mv not-for-ci/*.repo . && \ rm -rf not-for-ci; \ - fi; \ - sed -i \ - -e "s|{{ nodepool_rdo_proxy }}|https://trunk.rdoproject.org|g" \ - /etc/yum.repos.d/delorean*.repo + fi; {% elif base_distro == "debian" %} RUN sed -i -e "s|\[trusted=yes\] http://{{ nodepool_mirror_host }}|http://deb.debian.org|" \ -e "s|\[trusted=yes\] http://{{ nodepool_mirror_host }}|http://security.debian.org|" \ From d2ca2d38fe522b6b38133e56e6898172b8a5607c Mon Sep 17 00:00:00 2001 From: Bartosz Bezak Date: Tue, 2 Sep 2025 14:27:31 +0200 Subject: [PATCH 5/8] Use versioned Erlang 27 repo on aarch64 Fedora COPR build system cannot handle storing multiple package versions in one repo. Change-Id: I3ff95aa75f1f1cccfa40f3ab7f216cb221a6af29 Signed-off-by: Bartosz Bezak --- doc/source/contributor/versions.rst | 2 +- docker/base/copr-rabbitmq-erlang.repo | 4 ++-- .../notes/erlang-aarch64-repo-change-7fbc8696990b5677.yaml | 5 +++++ 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 releasenotes/notes/erlang-aarch64-repo-change-7fbc8696990b5677.yaml diff --git a/doc/source/contributor/versions.rst b/doc/source/contributor/versions.rst index 4f13ca7e64..8463b84eff 100644 --- a/doc/source/contributor/versions.rst +++ b/doc/source/contributor/versions.rst @@ -47,7 +47,7 @@ information about package sources. .. _`Team RabbitMQ 'Cloudsmith' repo (Deb)`: https://www.rabbitmq.com/install-debian.html#apt-cloudsmith .. _`Team RabbitMQ 'Modern Erlang' PPA`: https://launchpad.net/~rabbitmq/+archive/ubuntu/rabbitmq-erlang .. _`Team RabbitMQ 'Cloudsmith' repo (RPM)`: https://www.rabbitmq.com/docs/install-rpm#cloudsmith -.. _`openstack-kolla COPR`: https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang/ +.. _`openstack-kolla COPR`: https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-27/ .. _`Grafana install guide`: https://grafana.com/grafana/download?platform=linux&edition=oss .. _`MariaDB Community downloads`: https://mariadb.com/downloads/community/ diff --git a/docker/base/copr-rabbitmq-erlang.repo b/docker/base/copr-rabbitmq-erlang.repo index 17df94d9d0..fdfbf269ac 100644 --- a/docker/base/copr-rabbitmq-erlang.repo +++ b/docker/base/copr-rabbitmq-erlang.repo @@ -4,8 +4,8 @@ [copr-rabbitmq-erlang] name=openstack-kolla COPR with Erlang build for RabbitMQ -baseurl=https://download.copr.fedorainfracloud.org/results/@openstack-kolla/rabbitmq-erlang/rhel-$releasever-aarch64/ +baseurl=https://download.copr.fedorainfracloud.org/results/@openstack-kolla/rabbitmq-erlang-27/rhel-$releasever-aarch64/ gpgcheck=1 enabled=0 -gpgkey=https://download.copr.fedorainfracloud.org/results/@openstack-kolla/rabbitmq-erlang/pubkey.gpg +gpgkey=https://download.copr.fedorainfracloud.org/results/@openstack-kolla/rabbitmq-erlang-27/pubkey.gpg repo_gpgcheck=0 diff --git a/releasenotes/notes/erlang-aarch64-repo-change-7fbc8696990b5677.yaml b/releasenotes/notes/erlang-aarch64-repo-change-7fbc8696990b5677.yaml new file mode 100644 index 0000000000..5e20a7e0e6 --- /dev/null +++ b/releasenotes/notes/erlang-aarch64-repo-change-7fbc8696990b5677.yaml @@ -0,0 +1,5 @@ +--- +upgrade: + - | + Switches Erlang RPMs on aarch64 to a versioned Erlang 27 repository, + due to Fedora COPR not supporting multiple package versions in one repo. From 6b8123a8ccf4273d713c3fe3f8f592b85fe8de99 Mon Sep 17 00:00:00 2001 From: Bartosz Bezak Date: Tue, 2 Sep 2025 15:33:24 +0200 Subject: [PATCH 6/8] CI: add weekly COPR RPM build Erlang job Updating Erlang RPMs for aarch64 in Fedora COPR build system [1] [2]. Using COPR webhooks feature [3]. [1] https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-26 [2] https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-27 [3] https://docs.pagure.org/copr.copr/user_documentation.html#custom-webhook Change-Id: Ibd4450d14691aca627d99c321b313420ce6dd6f2 Signed-off-by: Bartosz Bezak --- .zuul.d/base.yaml | 25 +++++++++++++++++++++++++ .zuul.d/ubuntu.yaml | 12 ++++++++++++ tests/playbooks/copr-erlang-update.yml | 18 ++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 tests/playbooks/copr-erlang-update.yml diff --git a/.zuul.d/base.yaml b/.zuul.d/base.yaml index 464c6df03c..ca47b51ce2 100644 --- a/.zuul.d/base.yaml +++ b/.zuul.d/base.yaml @@ -43,6 +43,31 @@ 7xlK/HOqvgMubcqzR33mRoSnkcnFpD50O9k41ZsF9SPKHMGmk9LyI05vkL6bcc3ypLBQY BTdg70hF/5m6rHFbVCsNDPlVykcEzsW6D4qqxh/5b3LHbPYbe7ciXcc+PTnYb8= +- secret: + name: kolla_copr_webhooks + data: + urls: !encrypted/pkcs1-oaep + - IOTnCYHKs2AOvo5eRCUyy2e7mmo4zzPsTjcYJUlX1g+S93hXxqq3jS/EXJUE57TOJePeS + saLbrFZyBScL9oYZaXiXPDiGMUHH09AdcdKJ18KhYGnYPx9j5o7ya0HBfbVD736JQrLGV + oa08Rav+27I9guYu2V3B9CH+BQId0iujceeoVd0keUHoZFkTBrdX4rjQ6QlpcCn2KFcMG + EAeVM6SFXU8KSm5b7/T7cKJmyuQk3uAD0R/RaY4L4GLKdZMgG2rf0AA/sOAbZgIf/nqem + vwyJRM342fVKDozOivDMNcqMVjKtOwr/+CL3M2cTktxYq/WOVTxY72c/mjt2AE9lbDNu3 + zMMz+95fdkMUdlowC0ODcGL6M4DOlsrZpiUO9iaIqBpl9iJtZsAVB3/Zbb0LBJ3+o3Sp5 + rcYMwhICSITXECvERz9R63MGvtf3DaucKkJRtTri6Utwc9ZCCU0ZsW9jzJZ1roqMjzWEJ + oWg4uIrlzE7T96I8zly/nyYJJEYIE5/qmzg03cVTGRkq803PclDWuGJt9isUVqnTj07XZ + d06KIU2FmRPuC4L4XmHU5wMmE/XwqO6LkTlFhXJCnhpQTp9kcRIt680+3DWwSHQsL47Ld + o2tX1XeVm2m7IK3Xy8I6TwIpSJ8B43afKBFRg1w79yXrHSOMNj6fuNJ+WU/Us8= + - HIkK4PWDXI7VFNVm+/+qKmfEze/02zNi77wUH5sJLbShN1JVwLoJDdXNN9wmcIWWFDMkh + On4sMuW9OLZvaNl23/Hs9SPHfGJDalgT4UBxqO15JUiojptZwxTzT+A654D5szsEU3LHU + zNe/Ly0AW0WmjjDkP3waCyBk5WfR3LfTSTlVw3yK6t71V/XbYJIm9m+c47dgBWMuL4Voj + xOMTBYXyUQYpdB744Hc3F4ensoE9SHlSIpgmmaiWW+DMHRz4Diz1Kppb67ts34kVRyf/B + EVlEjxr7IBR5+ZpuCPNSDJALkl/nw4tXoaw0u+VazgBOYJsdQq2OJFXhiGNFAeO8p3Kqw + ALkf8du+CXAeBBumODBToZRPb9vARlPVind/svJXdDwZfSixfCHvRQ9gEagNzYYo/CjFV + JBZpzG1NX/C5WNtvrltemaeyL120x6VnXvz7oL4v8lgIlGM4MSg8miKvgCl/IXBLqoKq1 + 0mRmqVQVjaIhLpc9UzzB3MByQzlErmYXNjzrZRICzmiQocLCTjKebzUn4dhYQ1SIjufjV + Xe09WORotwmRLkhr76gZqpYOaTyWDjYZUwcMigQMj+iNQQmUPCqasUkVai5VLH7A2cX8V + IKnI6zygwIHXLVrmtUGh5V8eXPXw4RdhILS7vSw65jk4qjJwniNcd5kXzMINRA= + - nodeset: name: kolla-centos-9-stream nodes: diff --git a/.zuul.d/ubuntu.yaml b/.zuul.d/ubuntu.yaml index 3d0d24547e..91eff94fd8 100644 --- a/.zuul.d/ubuntu.yaml +++ b/.zuul.d/ubuntu.yaml @@ -45,6 +45,9 @@ periodic: jobs: - kolla-publish-ubuntu-quay + periodic-weekly: + jobs: + - kolla-copr-erlang-update experimental: jobs: - kolla-build-no-infra-wheels-ubuntu @@ -91,3 +94,12 @@ nodeset: kolla-ubuntu-noble vars: base_distro: ubuntu + +- job: + name: kolla-copr-erlang-update + parent: base + nodeset: kolla-ubuntu-noble + timeout: 3600 + run: tests/playbooks/copr-erlang-update.yml + secrets: + - kolla_copr_webhooks diff --git a/tests/playbooks/copr-erlang-update.yml b/tests/playbooks/copr-erlang-update.yml new file mode 100644 index 0000000000..a05a7ce24f --- /dev/null +++ b/tests/playbooks/copr-erlang-update.yml @@ -0,0 +1,18 @@ +--- +- name: COPR Erlang update + hosts: all + tasks: + - name: Ensure webhook URLs are defined + no_log: true + ansible.builtin.assert: + that: + - kolla_copr_webhooks.urls is defined + - kolla_copr_webhooks.urls | length > 0 + fail_msg: "Missing Zuul secret 'kolla_copr_webhooks.urls' (list of webhook URLs)." + + - name: Trigger COPR builds via webhooks + no_log: true + ansible.builtin.uri: + url: "{{ item }}" + method: POST + loop: "{{ kolla_copr_webhooks.urls }}" From 0ab1d7240e2fb83f35ec7d800b8edf00c5bd74b6 Mon Sep 17 00:00:00 2001 From: Bartosz Bezak Date: Thu, 28 Aug 2025 14:59:04 +0200 Subject: [PATCH 7/8] docs: update main contributor guide page The goal is to unify common contributor information across all kolla projects (communication, launchpad links, etc). Change-Id: Iddcaa8723b364fe4e8619f8fc2b03c93b685db86 Signed-off-by: Bartosz Bezak --- doc/source/contributor/contributing.rst | 47 +++++++++++++++++++------ 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/doc/source/contributor/contributing.rst b/doc/source/contributor/contributing.rst index 8a71a99c5c..9d32291e05 100644 --- a/doc/source/contributor/contributing.rst +++ b/doc/source/contributor/contributing.rst @@ -26,7 +26,8 @@ Communication IRC Channel ``#openstack-kolla`` (`channel logs`_) on `OFTC `_ -`Weekly Meetings `_ +Weekly Meetings + In the IRC channel (`meeting information`_) Mailing list (prefix subjects with ``[kolla]``) https://lists.openstack.org/pipermail/openstack-discuss/ @@ -40,7 +41,7 @@ Whiteboard (etherpad) https://etherpad.openstack.org/p/KollaWhiteBoard .. _channel logs: https://meetings.opendev.org/irclogs/%23openstack-kolla/ -.. _meetings logs: https://meetings.opendev.org/meetings/kolla/ +.. _meeting information: https://meetings.opendev.org/#Kolla_Team_Meeting Contacting the Core Team ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -49,8 +50,8 @@ In general it is suggested to use the above mentioned public communication channels, but if you find that you need to contact someone from the Core team directly, you can find the lists in Gerrit: -- kolla-core https://review.opendev.org/admin/groups/28d5dccfccc125b3963f76ab67e256501565d52b,members -- kayobe-core https://review.opendev.org/admin/groups/361e28280e3a06be2997a5aa47a8a11d3a8fb9b9,members +- `Kolla core team `__ +- `Kayobe core team `__ New Feature Planning ~~~~~~~~~~~~~~~~~~~~ @@ -61,20 +62,30 @@ prefix). Task Tracking ~~~~~~~~~~~~~ -Kolla project tracks tasks in `Launchpad `__. -Note this is the same place as for bugs. +Kolla family projects track tasks and bugs in Launchpad: + +- `Kolla `__ +- `Kolla Ansible `__ +- `Ansible Collection Kolla `__ +- `Kayobe `__ If you're looking for some smaller, easier work item to pick up and get started -on, search for the 'low-hanging-fruit' tag. +on, search for the 'low-hanging-fruit' tag in the relevant project. A more lightweight task tracking is done via etherpad - `Whiteboard `__. Reporting a Bug ~~~~~~~~~~~~~~~ -You found an issue and want to make sure we are aware of it? You can do so -on `Launchpad `__. -Note this is the same place as for tasks. +You found an issue and want to make sure we are aware of it? +Please report it in the appropriate Launchpad project: + +- `Kolla `__ +- `Kolla Ansible `__ +- `Ansible Collection Kolla `__ +- `Kayobe `__ + +Note these are also used for task tracking. Getting Your Patch Merged ~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -86,6 +97,22 @@ is described in :ref:`its own section `. Significant changes should have documentation and testing provided with them. +To see an overview of in-progress patches, sorted into useful sections, you can +view the: + +- `Kolla Review Dashboard `__ + +- `Kolla Ansible Review Dashboard `__ + +- `Ansible Collection Kolla Review Dashboard `__ + +- `Kayobe Review Dashboard `__ + +.. note:: + + If you feel that your change is getting overlooked, reach out via + :ref:`preferred communication methods ` to let us know. + Project Team Lead Duties ~~~~~~~~~~~~~~~~~~~~~~~~ From 012d69d157c32fdf85b2d67c32272f6a0aea11d4 Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Fri, 5 Sep 2025 12:55:01 +0200 Subject: [PATCH 8/8] CI: Drop zun jobs Similar to https://review.opendev.org/c/openstack/kolla-ansible/+/959307 Change-Id: I6033521fc1fefe55f685914f823d58c96f68611a Signed-off-by: Michal Nasiadka --- .zuul.d/ubuntu.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.zuul.d/ubuntu.yaml b/.zuul.d/ubuntu.yaml index 91eff94fd8..e3fb84584f 100644 --- a/.zuul.d/ubuntu.yaml +++ b/.zuul.d/ubuntu.yaml @@ -31,8 +31,6 @@ files: ^docker/proxysql/ - kolla-ansible-ubuntu-bifrost: files: ^docker/bifrost/ - - kolla-ansible-ubuntu-zun: - files: ^docker/|zun/ check-arm64: jobs: - kolla-build-ubuntu-aarch64