-
Notifications
You must be signed in to change notification settings - Fork 198
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
treefile: Add exclude-packages #1980
treefile: Add exclude-packages #1980
Conversation
Tested this locally but still WIP to add a test that a compose fails with this. And also needs docs - before I write those let's bikeshed on naming etc. |
2f1696d
to
d367901
Compare
d367901
to
44b4ee8
Compare
I remember talking about this with @jlebon. Looking a bit around, I found these prior discussions:
If you are looking for feedback on naming, I'd personally go for something which is aligned with the underlying libdnf feature (i.e. containing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some minor comments, but LGTM overall!
44b4ee8
to
7673390
Compare
/lgtm |
In FCOS we have a kola test that basically does `rpm -q python`. It's...a bit silly to spawn a whole VM for this. Ensuring that some specific packages don't get included has come up in a few cases. I think FCOS/RHCOS at least will want to blacklist `dnf` for example. And as noted above, FCOS could blacklist `python`. One major benefit of doing this inside rpm-ostree is that one gets the full "libsolv error message experience" when dependency resolution fails, e.g. blacklisting `glibc` I get: ``` Problem 79: conflicting requests - package coreos-installer-systemd-0.1.2-1.fc31.x86_64 requires coreos-installer = 0.1.2-1.fc31, but none of the providers can be installed - package coreos-installer-0.1.2-1.fc31.x86_64 requires rtld(GNU_HASH), but none of the providers can be installed - package glibc-2.30-10.fc31.x86_64 is filtered out by exclude filtering - package glibc-2.30-7.fc31.x86_64 is filtered out by exclude filtering - package glibc-2.30-8.fc31.x86_64 is filtered out by exclude filtering - package glibc-2.30-5.fc31.i686 is filtered out by exclude filtering - package glibc-2.30-5.fc31.x86_64 is filtered out by exclude filtering - package glibc-2.30-10.fc31.i686 is filtered out by exclude filtering ```
7673390
to
583a265
Compare
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: cgwalters, jlebon The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
This makes use of the new coreos/rpm-ostree#1980 And we can then drop the test in kola that boots a whole VM for this.
This makes use of the new coreos/rpm-ostree#1980 And we can then drop the test in kola that boots a whole VM for this.
We want to pull in the v2020.1 version of `rpm-ostree` for the `exclude-packages` support[0]. @jlebon was nice enough to rebuild `rpm-ostree` with that support in F30, so blow out the cache to make sure we pick it up. [0] coreos/rpm-ostree#1980
We want to pull in the v2020.1 version of `rpm-ostree` for the `exclude-packages` support[0]. @jlebon was nice enough to rebuild `rpm-ostree` with that support in F30, so blow out the cache to make sure we pick it up. [0] coreos/rpm-ostree#1980 (cherry picked from commit 1f0f61e)
In FCOS we have a kola test that basically does
rpm -q python
.It's...a bit silly to spawn a whole VM for this. Ensuring that
some specific packages don't get included has come up in a few
cases.
I think FCOS/RHCOS at least will want to blacklist
dnf
for example.And as noted above, FCOS could blacklist
python
.One major benefit of doing this inside rpm-ostree is that one
gets the full "libsolv error message experience" when dependency
resolution fails, e.g. blacklisting
glibc
I get: