parse-nm: account for veth and dummy when checking for virtual types#513
Merged
daniloegea merged 1 commit intocanonical:mainfrom Sep 3, 2024
Merged
Conversation
Contributor
Author
|
Thanks, I'll just fix a typo in the commit message before merging. |
The new types DUMMY and VETH were added to the types enum after the generic type NM. In order to build the netdef ID, it checked if the interface was virtual but it wouldn't consider DUMMY and VETH. Because of that, when these types of interfaces are created via Network Manager, their netdef IDs will be the connection UUID. For virtual devices we want it to be the interface name.
e4f23af to
8ce737c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The new types DUMMY and VETH were added to the types enum after the generic type NM. We it checked if the interfaces was virtual, in order to build the netdef id, it wouldn't consider DUMMY and VETH.
Because of that, when a dummy or veth interface is created via network manager, it's netdef ID would be the connection UUID. For virtual devices we want it to be the interface name.
It works fine with existing interfaces. Network Manager will get the netdef ID from the file name. It was tested by creating a bunch of dummies and veths via nmcli, updating libnetplan and creating new and modifying existing connections.
I created a PPA for oracular with this patch here https://launchpad.net/~danilogondolfo/+archive/ubuntu/netplan.io
Loading this keyfile:
Would emit this YAML:
With this fix it will emit:
Description
Checklist
make checksuccessfully.make check-coverage).