From 8d046017d52970daac3b1a585cf577c95bd86b5d Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Wed, 17 Jun 2026 15:40:09 +0200 Subject: [PATCH] Fix paths to EPEL repositories Our EPEL repository file was building paths using variable $releasever, i.e. `10`. This now maps to `/pub/epel/10.3` which contains packages that may not be compatible with Rocky Linux 10.2. Change paths to use the minor version when defined (it is undefined on CentOS Stream). This will produce paths such as `/pub/epel/10.2` on Rocky Linux 10.2. We could also use `/pub/epel/10z` to point to the latest stable release, but it returns a 404 error on download.fedoraproject.org. Compared to the original commit on master, this change is adapted to be compatible with Rocky Linux 9. Closes-Bug: #2156407 Change-Id: I62c16b9d09607ab728068d64196b11ed83e03195 Signed-off-by: Pierre Riteau (cherry picked from commit b00b6cc804ab18b5b76d3463727e660d0badc856) --- ansible/roles/dnf/templates/epel.repo.j2 | 13 +++++++------ .../fix-epel-repo-paths-rocky-2ba695709fcc6f9c.yaml | 9 +++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 releasenotes/notes/fix-epel-repo-paths-rocky-2ba695709fcc6f9c.yaml diff --git a/ansible/roles/dnf/templates/epel.repo.j2 b/ansible/roles/dnf/templates/epel.repo.j2 index ad5d8c774..70c1477d8 100644 --- a/ansible/roles/dnf/templates/epel.repo.j2 +++ b/ansible/roles/dnf/templates/epel.repo.j2 @@ -1,22 +1,23 @@ +{% set epel_version = '$releasever${releasever_minor:+.$releasever_minor}' if os_distribution == 'rocky' and os_release == '10' else '$releasever' %} [epel] -name=Extra Packages for Enterprise Linux $releasever - $basearch -baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/$releasever/Everything/$basearch +name=Extra Packages for Enterprise Linux {{ epel_version }} - $basearch +baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/{{ epel_version }}/Everything/$basearch enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-{{ ansible_facts.distribution_major_version }} fastestmirror=0 [epel-debuginfo] -name=Extra Packages for Enterprise Linux $releasever - $basearch - Debug -baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/$releasever/Everything/$basearch/debug +name=Extra Packages for Enterprise Linux {{ epel_version }} - $basearch - Debug +baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/{{ epel_version }}/Everything/$basearch/debug enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-{{ ansible_facts.distribution_major_version }} gpgcheck=1 fastestmirror=0 [epel-source] -name=Extra Packages for Enterprise Linux $releasever - $basearch - Source -baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/$releasever/Everything/SRPMS +name=Extra Packages for Enterprise Linux {{ epel_version }} - $basearch - Source +baseurl=http://{{ dnf_epel_mirror_host }}/{{ dnf_epel_mirror_directory }}/{{ epel_version }}/Everything/SRPMS enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-{{ ansible_facts.distribution_major_version }} gpgcheck=1 diff --git a/releasenotes/notes/fix-epel-repo-paths-rocky-2ba695709fcc6f9c.yaml b/releasenotes/notes/fix-epel-repo-paths-rocky-2ba695709fcc6f9c.yaml new file mode 100644 index 000000000..b0c07efe3 --- /dev/null +++ b/releasenotes/notes/fix-epel-repo-paths-rocky-2ba695709fcc6f9c.yaml @@ -0,0 +1,9 @@ +--- +fixes: + - | + Fixes paths to EPEL repositories on Rocky Linux. Previously, they were only + using the major version ``$releasever`` which could point to an + incompatible repository. They now use both major and minor versions, e.g. + ``10.2`` instead of ``10``. There is no change on CentOS Stream which uses + only the major version. + `LP#2156407 `__