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 @@ DISTRO_PRETTY_NAME = { } 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 @@ _BASE_OPTS = [ 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|" \