-
Notifications
You must be signed in to change notification settings - Fork 157
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
overlay/fcos: pin legacy ifnames on existing machines #490
Conversation
fi | ||
|
||
# Otherwise, make sure we stay on legacy ifnames. | ||
sed -e "/^options / s/$/ net.ifnames=0/" -i "$f" |
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.
@jlebon please double-check the my knowledge here: if injected this way, the net.ifnames=0
will be retained even if the next update payload does not have it in its embedded kargs. Correct?
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.
The update payload doesn't have kargs. Supporting that is ostreedev/ostree#479
So yes it will be retained because there's nothing to override it.
fi | ||
|
||
# Otherwise, make sure we stay on legacy ifnames. | ||
sed -e "/^options / s/$/ net.ifnames=0/" -i "$f" |
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.
The update payload doesn't have kargs. Supporting that is ostreedev/ostree#479
So yes it will be retained because there's nothing to override it.
562e89a
to
9a6a924
Compare
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.
Cool, thanks! One optional tweak, but LGTM as is too.
9a6a924
to
c30d42c
Compare
Rebased. The PR to drop this logic and get back to systemd default persistent names is at #491. |
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.
LGTM
Writing an ext test for this probably wouldn't be too hard (not a blocker though) |
@cgwalters do you mean literally on this logic, or are you maybe thinking of #491? I was planning to have it on the latter, as this one requires a reboot to be really tested and the old behavior will be gone from CI in a couple of releases. |
This introduces a `coreos-keep-legacy-ifnames` service to pin network interface names to the legacy scheme on machines where `99-default.link` is missing. This is in order to ensure that those machines do not jump into the new scheme via auto-updates as soon as FCOS starts shipping such unit in the OS.
c30d42c
to
70366d3
Compare
Rebased to fix the typos too. |
will merge this in a bit unless anyone has anything else |
FTR, this service fails on the live ISO because
|
Ahh of course. This should've had something like We should add some basic test of the live path as part of |
This introduces a `coreos-keep-legacy-ifnames` service to pin network interface names to the legacy scheme on machines where `99-default.link` is missing. This is in order to ensure that those machines do not jump into the new scheme via auto-updates as soon as FCOS starts shipping such unit in the OS. (cherry picked from commit d67f11e)
(dustymabe@aaf6867#commitcomment-40293518) (Just a quit note about this - someone may encouter the same issue I had) I noticed that all kernel configurations are impacted by this change and as a consequence it actually kind of "corrupts" your rollback. As an example, I had setup a /etc/systemd/network/99-default.link configuration file (not /usr/lib/systemd/network/99-default.link as expected) to avoid conflict with package systemd-dev. Then I did a rollback (to my previously working FCOS 31) and unfortunatly, my system was broken (i.e. I had legacy names on my network interfaces). |
In other words, you'd manually enabled the new names, and our change reverted it? Yes...we clearly should have been checking for that. I suspect a relatively small number of people have done this, and those who have can drop this override and use the new names going forward. If we get more reports of this we may need to try to adjust the code to detect this case. Sorry about that, and thank you for following up here! |
I was more concerned about the changes applied to all bootable kernel cmdline parameters. (by the way don't really know if this can be done a different way) |
ci/build-test: Do a cosa build + test
This introduces a
coreos-keep-legacy-ifnames
service to pinnetwork interface names to the legacy scheme on machines
where
99-default.link
is missing.This is in order to ensure that those machines do not jump
into the new scheme via auto-updates as soon as FCOS starts
shipping such unit in the OS.
Ref: coreos/fedora-coreos-tracker#484