-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
rpm repository manual minor version uptick #10328
Comments
I do not believe these two to be duplicates. Your suggestion
is in the same vein as this issue in that it's trying to be more compatible with the CentOS release schedule, but the issues themselves are separate. |
I think what's being proposed here is technically possible. Let's go down the rabbit hole... Let's say we did update zfs.repo to use $releasever instead of hardcoding the major.minor: [zfs-kmod]
name=ZFS on Linux for EL7 - kmod
- baseurl=http://download.zfsonlinux.org/epel/7.8/kmod/$basearch/
+ baseurl=http://download.zfsonlinux.org/epel/$releasever/kmod/$basearch/ That would allow you to use a single zfs-release.rpm for all version of Centos 7 ($releasever == 7). So problem solved! Not quite... The centos versions have different kernels. So lets say we built zfs-0.8.3 for both Centos 7.7 (3.10.0-1062 kernel) and Centos 7.8 (3.10.0-1127). (in reality, we only built it for 7.7, but go with me here). We would need two kmod packages, one for each kernel. So which One solution that may work, is to have multiple kmod-zfs package for a release, one for each supported kernel. Like:
Which would each put their modules respectively in the right /lib/modules directories, like:
One issue that may arise is that we don't currently " rpm -qpR kmod-zfs-0.8.3-1.el7.x86_64.rpm | grep kernel
...
kernel(add_disk) = 0xbc28fd2e
kernel(add_timer) = 0xbe2c0274
kernel(add_wait_queue_exclusive) = 0xee46885d
kernel(alloc_disk) = 0x7959fc3f
kernel(autoremove_wake_function) = 0xc8b57c27
... It's very possible that these functions would be exactly the same between Centos 7 minor versions. So I don't know what would happen if we did have:
... in the same So that takes care of kmod-zfs. What about the userspace RPMs though? Would we ever want a different Just thinking out loud... |
@azzid Sorry, I linked the wrong issue. See here for the correct one: #5015 (comment) @tonyhutter yours are valid concerns. I am not a fan of specifying the exact kernel version - what will happen when upgrading to a minor kernel bugfix release, for example from I think most of the benefit can be reaped by adding a, say, Or, even simpler, let Am I missing something? |
@shodanshok I like your idea of having:
...with |
This issue has been automatically marked as "stale" because it has not had any activity for a while. It will be closed in 90 days if no further activity occurs. Thank you for your contributions. |
Commenting as this is still an issue with CentOS 8.x @tonyhutter did you happen to run into any issues in testing? |
@dghodgson thanks for the heads-up, this totally fell off my radar (I'll blame the pandemic...) The overall idea is still totally sound. Realistically though, it's going to be at least a month or longer before I can generate and test a new zfs-release rpm, due to some prior commitments. Please ping me if I haven't posted an update here in 6 weeks or so. Assigning myself this PR. |
Appreciate the update! Let me know if there's anything I can do to help test |
1. Update the spec files to use $releasever instead of hard coding the version number (7.9, 8.3, 8.4 ...) in the repo. This means you can use zfs-release-el-1.rpm for any version of RHEL/AlmaLinux/Centos, and zfs-release-fedora-1.rpm for any version of Fedora. openzfs/zfs#10328 2. Only import our RPM key on CentOS 7: zfsonlinux#63 Signed-off-by: Tony Hutter <hutter2@llnl.gov>
1. Update the spec files to use $releasever instead of hard coding the version number (7.9, 8.3, 8.4 ...) in the repo. This means you can use zfs-release-el-1.rpm for any version of RHEL/AlmaLinux/Centos, and zfs-release-fedora-1.rpm for any version of Fedora. openzfs/zfs#10328 2. Only import our RPM key on CentOS 7: zfsonlinux#63 Signed-off-by: Tony Hutter <hutter2@llnl.gov>
1. Update the spec files to use $releasever instead of hard coding the version number (7.9, 8.3, 8.4 ...) in the repo. This means you can use zfs-release-el-1.rpm for any version of RHEL/AlmaLinux/Centos, and zfs-release-fedora-1.rpm for any version of Fedora. openzfs/zfs#10328 2. Only import our RPM key on CentOS 7: #63 Signed-off-by: Tony Hutter <hutter2@llnl.gov>
System information
Describe the problem you're observing
Upgrading from CentOS 7.7 to 7.8 is my first minor release upgrade since starting to use zfsonlinux. It seem to me that the process is somewhat cumbersome. Maybe I've missed something obvious - but this is the issue I see:
http://download.zfsonlinux.org/epel/7.7/kmod/$basearch/ and http://download.zfsonlinux.org/epel/7.8/kmod/$basearch/ are tightly knit to their respective minor release, and their paths are "hard coded" into /etc/yum.repos.d/zfs.repo. This means I have to do manual intervention whenever centos change their repos from 7.7 to 7.8 - a change which is not necessarily obvious to me as their repo-files never change. Their paths simply have a 7 in the path which is a symlink to whatever is current.
Thinking that my zfs repo-file was unneccessarily specific by pointing to 7.7 I tried changing it to just 7 to mimic how centos works. This did not give me a current repo, but a really old one:
I was thinking I could get better control over the situation if I could mirror the entire repo and monitor the mirror for what is currently
$latest
, but the only supported way to download rpm's from download.zfsonlinux.org is using reposync - which only downloads what's necessary for the particular machine it is run on.Should it not be possible to configure a centos machine using zfs in an way that would only require that you run
yum upgrade
to go from one minor release to the next?Describe how to reproduce the problem
yum upgrade after new centos minor release
Include any warning/errors/backtraces from the system logs
n/a
The text was updated successfully, but these errors were encountered: