[SRU][FFe] Update to netplan.io 0.100
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
netplan.io (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Focal |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Freeze Exception Rationale]
We would like to request a Feature Freeze exception for the new netplan 0.100 as this release will be carrying important roadmap features targeted for 20.10. Everything got delayed due to changing specs and requirements, but the features we want to deliver are still considered important. We are well aware that we are late with this release, but releasing the new netplan version will also unblock some of the other teams. Notably the addition of Open vSwitch support will unblock other projects such as OpenStack and MAAS.
[Additional details]
Install log:
https:/
Test log:
https:/
Build log (incl. unit test run):
https:/
Test builds + logs for other architectures:
https:/
=== SRU ===
[Impact]
This release contains both bug-fixes and new features and we would like to
make sure all of our supported customers have access to these improvements.
The most notable changes (besides usual bug-fixes) incoming in 0.100:
- Documentation improvements
- Improved integration tests
- Overall cleanup and refactoring
- Improved SR-IOV first boot experience
- Initial Open vSwitch support (LP: #1728134)
- Add support for Wireguard tunnels
- Add support for IP address labels (LP: #1743200)
- Improved routing & globbing in NetworkManager backend
- route attributes "from", "onlink" and "table"
- matching interfaces by glob pattern
- Add support for hidden wireless SSIDs (LP: #1866100)
- Introduce support for networkd address options (LP: #1803203)
- Implement ipv6-address-token key (LP: #1737976)
See the changelog entry below for a full list of changes and bugs.
[Test Case]
The following development and SRU process was followed:
https:/
Netplan contains an extensive integration test suite that is ran using
the SRU package for each releases. This test suite's results are available here:
http://
A successful run is required before the proposed netplan package
can be let into -updates.
The netplan team will be in charge of attaching the artifacts and console
output of the appropriate run to the bug. Netplan team members will not
mark ‘verification-done’ until this has happened.
[Regression Potential]
In order to mitigate the regression potential, the results of the
aforementioned integration tests are attached to this bug. We had to remove the openvswitch-switch build dependency and disable the test on riscv64/focal, due to a missing openvswitch build for focal.
Focal:
https:/
https:/
https:/
https:/
https:/
Note:
There is one flaky test in focal_arm64_log and focal_ppc64el_log, which should not be considered a regression, as the OVS functionality (and tests) have just been added with netplan.io 0.100 and weren't released to Focal before:
test_vlan_maas (__main__.TestOVS) ... FAIL
[Changelog]
b7d32ae tests: improve tunnels integration test, to make it non-flaky
5c688e3 Add wireguard support, take two. (#113)
ee50582 Implement ipv6-address-
fd750e2 Openvswitch support (LP: #1728134) (#154)
4fe703d Flush IPs of NM managed interfaces (LP: #1870561) (#159)
85134d1 Introduce support for networkd address options (#89)
50ac1a1 Fix GCC-10 -fno-common linker errors (LP: #1875412) (#155)
018879c Correct documentation on dhcp route-metric
c4bf2be Work on a better first-boot experience with SR-IOV (#141)
a43a211 Fix inconsistent indentation (#150)
5bf79e2 Fix autopkgtest on arm64 with NM 1.24 (#146)
9dff688 Add NM integration tests for interface globbing and route options (#140)
7f680ce Doc: Mark versions of new config keys (#137)
8f77dee Fix process_
0c2babc tests:routing: verify multiple NM routing options
24152b5 nm: support route attributes "from", "onlink", and "table" and "match.
35548a4 Don't fail if same primary slave was set before (LP: #1817651) (#136)
da6f776 Call daemon-reload after we touched systemd unit files (LP: #1874494) (#135)
be54ece Makefile: improve 'make clean'
a56f98d Add missing feature flags, fix manpage for DHCP overrides.
ec22d54 doc: improve ipv6-address-
a742337 doc: fix 'modems' formatting
11961d5 test:wifi: fix typo in test YAML
a28fe65 Add `hidden` to connect to non-broadcast SSIDs (#132)
5df5831 Add some basic SR-IOV examples.
a9f138d Fix LP#1874377: Not connect to WiFi after 'netplan apply' (#133)
5650a7f Fix typo in docs "networks:" -> "network:" (#131)
Related branches
- Łukasz Zemczak: Approve
-
Diff: 9043 lines (+6250/-549)55 files modifiedMakefile (+3/-2)
debian/changelog (+69/-0)
debian/control (+1/-0)
debian/libnetplan0.symbols (+7/-0)
debian/patches/0001-Implement-just-in-time-behaviour-for-generate-162.patch (+296/-0)
debian/patches/series (+1/-2)
debian/rules (+4/-0)
debian/tests/autostart (+9/-5)
debian/tests/cloud-init (+115/-0)
debian/tests/control (+18/-0)
dev/null (+0/-34)
doc/netplan.md (+298/-74)
examples/sriov.yaml (+14/-0)
examples/sriov_vlan.yaml (+18/-0)
examples/static.yaml (+2/-2)
netplan/cli/commands/apply.py (+91/-17)
netplan/cli/commands/try_command.py (+2/-2)
netplan/cli/ovs.py (+168/-0)
netplan/cli/sriov.py (+32/-18)
netplan/cli/utils.py (+32/-0)
netplan/configmanager.py (+32/-0)
src/generate.c (+14/-2)
src/networkd.c (+114/-32)
src/networkd.h (+2/-0)
src/nm.c (+109/-26)
src/openvswitch.c (+484/-0)
src/openvswitch.h (+24/-0)
src/parse.c (+763/-241)
src/parse.h (+56/-4)
src/sriov.c (+40/-0)
src/sriov.h (+21/-0)
src/util.c (+29/-0)
src/util.h (+6/-2)
src/validation.c (+155/-10)
src/validation.h (+3/-0)
tests/generator/base.py (+54/-0)
tests/generator/test_args.py (+18/-4)
tests/generator/test_bonds.py (+42/-0)
tests/generator/test_common.py (+194/-1)
tests/generator/test_errors.py (+69/-1)
tests/generator/test_ethernets.py (+23/-7)
tests/generator/test_ovs.py (+1021/-0)
tests/generator/test_routing.py (+145/-17)
tests/generator/test_tunnels.py (+477/-5)
tests/generator/test_wifis.py (+143/-0)
tests/integration/base.py (+6/-4)
tests/integration/ethernets.py (+38/-0)
tests/integration/ovs.py (+559/-0)
tests/integration/routing.py (+76/-21)
tests/integration/tunnels.py (+71/-0)
tests/test_configmanager.py (+21/-0)
tests/test_ovs.py (+129/-0)
tests/test_sriov.py (+55/-12)
tests/test_utils.py (+73/-0)
tests/validate_docs.sh (+4/-4)
- Łukasz Zemczak: Approve
-
Diff: 8854 lines (+5784/-592)51 files modifiedMakefile (+3/-2)
debian/changelog (+31/-0)
debian/control (+1/-0)
debian/libnetplan0.symbols (+7/-0)
debian/patches/series (+0/-5)
debian/tests/control (+15/-0)
dev/null (+0/-79)
doc/netplan.md (+298/-74)
examples/sriov.yaml (+14/-0)
examples/sriov_vlan.yaml (+18/-0)
examples/static.yaml (+2/-2)
netplan/cli/commands/apply.py (+91/-17)
netplan/cli/commands/try_command.py (+2/-2)
netplan/cli/ovs.py (+168/-0)
netplan/cli/sriov.py (+32/-18)
netplan/cli/utils.py (+32/-0)
netplan/configmanager.py (+32/-0)
src/generate.c (+14/-2)
src/networkd.c (+114/-32)
src/networkd.h (+2/-0)
src/nm.c (+109/-26)
src/openvswitch.c (+484/-0)
src/openvswitch.h (+24/-0)
src/parse.c (+763/-241)
src/parse.h (+56/-4)
src/sriov.c (+40/-0)
src/sriov.h (+21/-0)
src/util.c (+29/-0)
src/util.h (+6/-2)
src/validation.c (+155/-10)
src/validation.h (+3/-0)
tests/generator/base.py (+54/-0)
tests/generator/test_args.py (+18/-4)
tests/generator/test_bonds.py (+42/-0)
tests/generator/test_common.py (+194/-1)
tests/generator/test_errors.py (+69/-1)
tests/generator/test_ethernets.py (+23/-7)
tests/generator/test_ovs.py (+1021/-0)
tests/generator/test_routing.py (+145/-17)
tests/generator/test_tunnels.py (+477/-5)
tests/generator/test_wifis.py (+143/-0)
tests/integration/base.py (+6/-4)
tests/integration/ethernets.py (+38/-0)
tests/integration/ovs.py (+559/-0)
tests/integration/routing.py (+76/-21)
tests/integration/tunnels.py (+71/-0)
tests/test_configmanager.py (+21/-0)
tests/test_ovs.py (+129/-0)
tests/test_sriov.py (+55/-12)
tests/test_utils.py (+73/-0)
tests/validate_docs.sh (+4/-4)
description: | updated |
description: | updated |
summary: |
- [FFe] Update to netplan.io 0.100 + [SRU][FFe] Update to netplan.io 0.100 |
description: | updated |
Changed in netplan.io (Ubuntu): | |
status: | Confirmed → In Progress |
Changed in netplan.io (Ubuntu): | |
status: | In Progress → Confirmed |
description: | updated |
description: | updated |
It's also worth mentioning that the OVS changes have been in use by various teams already since the very start, so in this part we're confident. A preliminary 0.100 version was also used by the MAAS team for the whole week, with no reports of any breakages so far.
As mentioned on IRC, netplan recently (even though being a risky package) has a very thorough unit testing and integration testing story. Basically most of the new features and changes come with both and have been verified to work as intended (mostly thanks to slyon!).
Since I am one of the maintainers of netplan and having worked on some of the changes included in 0.100, I don't think I should be the one giving a +1 on the FFe. But with my release hat on, I would approve it as it is still early after FF.