[SRU][FFe] Update to netplan.io 0.100

Bug #1894197 reported by Lukas Märdian on 2020-09-04
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
netplan.io (Ubuntu)
High
Unassigned
Focal
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://git.launchpad.net/~slyon/+git/files/tree/LP1894197/install.log

Test log:
https://git.launchpad.net/~slyon/+git/files/tree/LP1894197/test-groovy.log

Build log (incl. unit test run):
https://launchpadlibrarian.net/496165712/buildlog_ubuntu-groovy-amd64.netplan.io_0.100-0ubuntu1~ppa1_BUILDING.txt.gz

Test builds + logs for other architectures:
https://launchpad.net/~slyon/+archive/ubuntu/netplan/+packages

=== 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://wiki.ubuntu.com/NetplanUpdates

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://autopkgtest.ubuntu.com/packages/n/netplan.io

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://git.launchpad.net/~slyon/+git/files/tree/LP1894197/focal_amd64_log
https://git.launchpad.net/~slyon/+git/files/tree/LP1894197/focal_arm64_log
https://git.launchpad.net/~slyon/+git/files/tree/LP1894197/focal_armhf_log
https://git.launchpad.net/~slyon/+git/files/tree/LP1894197/focal_ppc64el_log
https://git.launchpad.net/~slyon/+git/files/tree/LP1894197/focal_s390x_log

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-token-id key (LP: #1737976) (#161)
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_link_changes handling 'up' interfaces (#143)
0c2babc tests:routing: verify multiple NM routing options
24152b5 nm: support route attributes "from", "onlink", and "table" and "match.interface-name" (#84)
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-generation documentation
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

Lukas Märdian (slyon) on 2020-09-04
description: updated
Łukasz Zemczak (sil2100) wrote :

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.

Iain Lane (laney) wrote :

It's late, but it's not *that* late that there's no time to pick up any pieces if necessary. I trust that you'll keep an eye out for bugs.

Please go for it.

Changed in netplan.io (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Łukasz Zemczak (sil2100) wrote :

Yay! Thank you! I'll sponsor stuff for Lukas ASAP.

Lukas Märdian (slyon) on 2020-09-07
description: updated
Lukas Märdian (slyon) on 2020-09-22
summary: - [FFe] Update to netplan.io 0.100
+ [SRU][FFe] Update to netplan.io 0.100
Lukas Märdian (slyon) on 2020-09-22
description: updated
Lukas Märdian (slyon) on 2020-09-24
Changed in netplan.io (Ubuntu):
status: Confirmed → In Progress
Lukas Märdian (slyon) on 2020-09-30
Changed in netplan.io (Ubuntu):
status: In Progress → Confirmed
Robie Basak (racb) wrote :

I noticed that the *entire* build time test suite is being disabled on riscv64 instead of just the OVS bits. I talked to Lukas on IRC and came to the following conclusion:

"I don't like the lack of care for an architecture just because we don't think it's an important enough architecture. Apparently Ubuntu considered it important enough to release with it, and so I think we need to use that standard. Adding new features like this is predicated on having good test coverage, and so it seems wrong to me just to turn that off for one architecture Skipping some tests based on architecture really shouldn't be difficult unless I'm missing something - and as straightforward to review as the current patch. So I think we should either do that, or wait on OVS support on Focal. I'm happy to seek wider SRU team opinion if you like."

"It just seems to me that as we're trying to make riscv64 both in original bringup and on an ongoing basis, disabling stuff like this is a step backwards - and doubly so to regress this in an SRU."

We concluded that Lukas would prepare a new upload with all tests enabled and upload that after OVS support in riscv64 lands. As the current upload will no longer land as-is, I'll reject it from the queue.

Lukas Märdian (slyon) wrote :

We decided that we do not want to block on OVS, so we prepared a new upload (netplan.io 0.100-0ubuntu4~20.04.2), which keeps the riscv64 unit-test at build time active, just skipping some of the new OVS tests.

Steve Langasek (vorlon) wrote :

0.100 is released in groovy.

Changed in netplan.io (Ubuntu):
status: Confirmed → Fix Released

Hello Lukas, or anyone else affected,

Accepted netplan.io into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/netplan.io/0.100-0ubuntu4~20.04.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in netplan.io (Ubuntu Focal):
status: New → Fix Committed
tags: added: verification-needed verification-needed-focal

All autopkgtests for the newly accepted netplan.io (0.100-0ubuntu4~20.04.2) for focal have finished running.
The following regressions have been reported in tests triggered by the package:

netplan.io/0.100-0ubuntu4~20.04.2 (ppc64el, amd64, arm64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/focal/update_excuses.html#netplan.io

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Lukas Märdian (slyon) on 2020-10-09
description: updated
description: updated
Lukas Märdian (slyon) wrote :

Hello Brian,

I have been testing netplan.io 0.100-0ubuntu4~20.04.2 according to https://wiki.ubuntu.com/NetplanUpdates, i.e. having all the integration tests run on autopkgtest.u.c and appending the logs to the bug report (see above).

All tests run successfully, except for "test_vlan_maas (__main__.TestOVS)" on arm64 & ppcel64. This is a known flaky test, which times out sometimes, especially on "slower architectures". It 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.

The amd64 test was flaky as well, but passed the 2nd time.

tags: added: verification-done-focal
removed: verification-needed-focal
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package netplan.io - 0.100-0ubuntu4~20.04.2

---------------
netplan.io (0.100-0ubuntu4~20.04.2) focal; urgency=medium

  * Backport netplan.io 0.100-0ubuntu4 to 20.04 (LP: #1894197)
    - Includes fix for OVS/WPA first-time boot issues
  * Drop distro patches, which are included in upstream release
  * Ignore openvswitch-switch Build-Depends on riscv64, due to missing package
    - Failing unit-/integration tests will be ignored on riscv64 as well
  * Skip specific unit-tests on riscv64

 -- Lukas Märdian <email address hidden> Wed, 30 Sep 2020 14:32:36 +0200

Changed in netplan.io (Ubuntu Focal):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for netplan.io has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers