Hi Brian,

for Bionic SRU verification, I checked the logs of the automatic
integration test-suite (autopkgtests) of netplan.io
(0.99-0ubuntu3~18.04.2) and made sure all tests finished successfully.

Vorlon re-trigger one autopkgtest for bionic/amd64, due to a timing
issue (flaky test); it ran successfully the 2nd time and all
autopkgtests for Bionic are now green. All bionic test logs are attached
to the description of this bug report.

Additionally, I executed the following manual test inside a Bionic
multipass instance, which shows that netplan's 'generate' is not
rejecting the config anymore, but printing a warning instead!

All looking good to me!


=== TEST SETUP ===
ubuntu@b:~$ cat test.yaml 
network:
  version: 2
  ethernets:
    ens4:
      match:
        name: eth0
  bonds:
    bond0:
      interfaces: [ens4]
      parameters:
        mode: lacp
        arp-ip-targets:
          - 192.168.0.10
      dhcp4: true


=== BEFORE ===
ubuntu@b:~$ dpkg -l | grep netplan
ii  libnetplan0:amd64                0.99-0ubuntu3~18.04.1
ii  netplan.io                       0.99-0ubuntu3~18.04.1

ubuntu@b:~$ sudo /lib/netplan/generate test.yaml 
test.yaml:11:15: Error in network definition: unknown bond mode 'lacp'
        mode: lacp
              ^
ubuntu@b:~$ echo $?
1

=== AFTER ===
ubuntu@b:~$ dpkg -l | grep netplan
ii  libnetplan0:amd64                0.99-0ubuntu3~18.04.2
ii  netplan.io                       0.99-0ubuntu3~18.04.2

ubuntu@b:~$ sudo /lib/netplan/generate test.yaml 
WARNING: unknown bond mode 'lacp'. Your config needs to be updated to work with 
future series of Ubuntu.
ubuntu@b:~$ echo $?
0

** Description changed:

  As noted in
  https://github.com/CanonicalLtd/netplan/pull/97#issuecomment-625868233 ,
  netplan.io 0.98 has introduced stricter validation rules for netplan
  yaml compared to previous versions.  This causes previously accepted
  netplan yaml to fail to validate and therefore fail to apply, regressing
  users' networks after SRU upgrade.
  
  === SRU ===
  [Impact]
  This release contains one regression bug-fix for the bionic stable release 
and we would like to make sure all of our supported customers have access to 
these improvements.
  
-  * Do not reject invalid bonding mode config (LP: #1877643)
-    - Print a warning instead on bionic
-    - Only affects the bionic series
+  * Do not reject invalid bonding mode config (LP: #1877643)
+    - Print a warning instead on bionic
+    - Only affects the bionic series
  
  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.
  
  Special attention is given to tests/generator/test_bonds.py ->
- test_bond_invalid_mode, which was adopted to *not* reject an invalid
- bond config, but print a "WARNING: unknown bond mode '%s'" instead.
+ test_bond_invalid_mode (unit test at compile time), which was adopted to
+ *not* reject an invalid bond config, but print a "WARNING: unknown bond
+ mode '%s'" instead.
  
- <TODO: attach test artifacts for every SRU release>
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_amd64_log
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_arm64_log
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_armhf_log
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_i386_log
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_ppc64el_log
+ https://slyon.de/files/netplan/SRU-0.99b2/bionic_s390x_log
  
  [Discussion]
  It may be appropriate from an upstream POV to make the validation of input 
more strict over time, but it is never acceptable for an SRU to regress the 
interpretation of user config in this manner and cause config to fail to apply. 
 This PR either needs to be reverted for bionic, or it needs to be modified to 
treat unknown modes as a warning instead of a failure.
  
  [Changelog]
  debian/patches/Fix-invalid-bond-mode-SRU-regression-LP-1877643.patch:
  [PATCH] Fix invalid bond mode SRU regression (LP: #1877643)

** Tags removed: verification-needed verification-needed-bionic
** Tags added: verification-done verification-done-bionic

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1877643

Title:
  netplan.io 0.98 introduced more strict parsing of bonding mode,
  causing failures at boot for existing systems

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/netplan.io/+bug/1877643/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to