Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add epel and epel-testing repos to the EPEL 10 config #1484

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

carlwgeorge
Copy link
Contributor

Previously the EPEL 10 config only included the koji local repo, because that was the only thing available at the time. We now have working MirrorManager metalinks that we can use for the proper repos. Now that we have those repos, we can set the koji local repo to disabled by default, matching earlier EPEL configs.

We also now have a koji symlink that will be updated over time to point to the latest minor version tag buildroot repo, which can be used in the koji local baseurl. This avoids the inconvenience of updating that baseurl manually every six months.

Fixes: #1427

Comment on lines 15 to 16
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-$releasever_major&arch=$basearch
gpgkey=file:///usr/share/distribution-gpg-keys/epel/RPM-GPG-KEY-EPEL-$releasever_major
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was $releasever_major backported to RHEL 8 DNF? Otherwise, this might only work on RHEL 9+ unless you use a bootstrap image.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was discussed at length in #1427, and is why this PR also defines releasever_major in centos-stream-10.tpl.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem Neal describes (at least IIUC) is that Mock doesn't map its configuration options to DNF variables. Would you mind doing repo=epel-{{ releasever_major }} instead?

@praiskup
Copy link
Member

Thank you for the follow-up PR.

Just not sure, s/Fixes: #1427/Relates: #1427/ ? This doesn't seem to deal with the minor versions.

@carlwgeorge
Copy link
Contributor Author

Since this replaced the koji local baseurl with one that didn't need the minor version (the symlink you asked for), I felt it resolved that issue under the previous title of "The EPEL10 local repository now bakes-in RHEL minor version". The conversation in that issue certainly grew to be wider in scope, so I can understand the title change, and agree that it would change fixes to relates in the context of this PR.

[local]
name=Extra Packages for Enterprise Linux $releasever - Koji Local - BUILDROOT ONLY!
baseurl=https://kojipkgs.fedoraproject.org/repos/epel10.0-build/latest/$basearch/
baseurl=https://kojipkgs.fedoraproject.org/repos/epel{{ releasever_major }}/centos/$basearch/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a floating symlink to some other repository eventually? Can you perhaps document the trick here, or link a documentation that documents it?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's a symlink in the /mnt/fedora_koji network share in the Fedora infrastructure, similar to rawhide/latest.

[carlwgeorge@compose-rawhide01 repos][PROD-IAD2]$ pwd
/mnt/fedora_koji/koji/repos
[carlwgeorge@compose-rawhide01 repos][PROD-IAD2]$ ll rawhide/latest
lrwxrwxrwx. 1 root root 19 Aug 13 23:52 rawhide/latest -> ../f42-build/latest
[carlwgeorge@compose-rawhide01 repos][PROD-IAD2]$ ll epel10/centos
lrwxrwxrwx. 1 root root 24 Oct  9 01:54 epel10/centos -> ../epel10.0-build/latest

My thinking on the symlink naming is that it would be best to use the names centos and rhel. In the other issues we've thrown around name pairs like development+stable and latest+non-latest, but none of those sit quite right with me. It's the latest EPEL for CentOS and the latest EPEL for RHEL, so I think the symlinks should just match that. In the future, we'll have epel10/centos -> ../epel10.1-build/latest and epel10/rhel -> ../epel10.0-build/latest, and they will move forward over time.

I don't have this written down in formal documentation yet, but my team (CPE EPEL) is tracking our EPEL 10 work in some hackmd docs, which will serve as the basis for a future SOP in the releng and/or EPEL docs. I've got steps in there for adjusting these symlinks over time.

I can add a comment above this line with a basic summary that the link is a symlink that will move forward over time.

@praiskup
Copy link
Member

Thank you, except that I'd like to understand the epel10/centos trick first, LGTM

Previously the EPEL 10 config only included the koji local repo, because
that was the only thing available at the time.  We now have working
MirrorManager metalinks that we can use for the proper repos.  Now that
we have those repos, we can set the koji local repo to disabled by
default, matching earlier EPEL configs.

We also now have a koji symlink that will be updated over time to point
to the latest minor version tag buildroot repo, which can be used in the
koji local baseurl.  This avoids the inconvenience of updating that
baseurl manually every six months.

Relates: rpm-software-management#1427
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

mock-core-configs: maintenance of EPEL 10 minor versions
3 participants