Backport netplan to xenial
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
network-manager (Ubuntu) |
Fix Released
|
Wishlist
|
Unassigned | ||
Xenial |
Fix Released
|
Wishlist
|
Martin Pitt | ||
nplan (Ubuntu) |
Fix Released
|
Wishlist
|
Unassigned | ||
Xenial |
Fix Released
|
Wishlist
|
Martin Pitt | ||
systemd (Ubuntu) |
Fix Released
|
Low
|
Unassigned | ||
Xenial |
Fix Released
|
Low
|
Martin Pitt |
Bug Description
For snappy (at first at least) we need to provide netplan in xenial, as for the first snappy GA release we must not use any PPAs any more.
netplan's NetworkManager backend depends on two patches to read configuration and connections from /run/NetworkMan
PATCHES:
https:/
https:/
REGRESSION POTENTIAL:
netplan: The risk for existing installations is practically zero as nplan does not exist in xenial yet and thus will not be pulled in during upgrades.
NetworkManager: Nothing in xenial expects/uses /run/NetworkMan
systemd: This does change behavior of networkd quite a bit: RA is now being handled in userpsace instead of the kernel, there are some new virtual device types, LLDP support, etc., and there are no (known) backwards incompatibilities. The 229 version was known buggy with DHCPv6 (we disabled these two test cases), and judging by the feedback in Debian 231 is now reasonably stable. networkd is not being used by default or advertised in Ubuntu 16.04 (so far), so this will not affect the vast majority of installations. But while we have quite good test coverage, it cannot be ruled out that we break some custom setup that uses networkd.
TEST PLAN:
1. Run "NetworkManager --print-config" and save the output.
2. Install the proposed NetworkManager and confirm that existing connections (from /etc/NetworkMan
3. Run "NetworkManager --print-config" again and verify that the output is the same as in step 1.
4. netplan has a very comprehensive integration test suite run as autopkgtest, which covers NetworkManager (including the /run patches) and network. Confirm that it succeeds.
summary: |
- Provide nplan to xenial + Backport netplan to xenial |
Changed in network-manager (Ubuntu): | |
status: | New → Fix Released |
Changed in nplan (Ubuntu): | |
status: | New → Fix Released |
Changed in network-manager (Ubuntu Xenial): | |
status: | New → Triaged |
assignee: | nobody → Martin Pitt (pitti) |
importance: | Undecided → Wishlist |
Changed in nplan (Ubuntu Xenial): | |
importance: | Undecided → Wishlist |
status: | New → Triaged |
assignee: | nobody → Martin Pitt (pitti) |
description: | updated |
Changed in network-manager (Ubuntu Xenial): | |
status: | Triaged → In Progress |
description: | updated |
description: | updated |
description: | updated |
Changed in systemd (Ubuntu Xenial): | |
importance: | High → Wishlist |
importance: | Wishlist → Low |
Changed in nplan (Ubuntu Xenial): | |
status: | Triaged → In Progress |
Changed in network-manager (Ubuntu): | |
importance: | Undecided → Wishlist |
Changed in nplan (Ubuntu): | |
importance: | Undecided → Wishlist |
Changed in systemd (Ubuntu): | |
importance: | Undecided → Low |
description: | updated |
With the backported nplan one test case fails:
======= ======= ======= ======= ======= ======= ======= ======= ======= ======= addresses (__main_ _.TestNetworkd) ------- ------- ------- ------- ------- ------- ------- ------- ------- st.RBASGN/ build.kj6/ nplan-0. 12~16.04/ tests/integrati on.py", line 458, in test_manual_ addresses st.RBASGN/ build.kj6/ nplan-0. 12~16.04/ tests/integrati on.py", line 303, in assert_iface_up assertNotRegex( out, r, out)
FAIL: test_manual_
-------
Traceback (most recent call last):
File "/tmp/autopkgte
'inet6 1234']) # old static IPv6
File "/tmp/autopkgte
self.
AssertionError: Regex matched: 'inet 192.168.5' matches 'inet 192.168.5'
I. e. after "netplan apply" the old DHCP address from the interface does not disappear when switching to a pure "static addresses" config. This works in yakkety, and I need to investigate this first (might need a backported fix to networkd).