[Bug 1990504] Re: nullboot 0.4.0 jammy SRU
Gauthier Jolly
1990504 at bugs.launchpad.net
Thu Nov 17 13:48:32 UTC 2022
The CPC team has been building (but not publishing) Jammy CVM images
with nullboot 0.4.0 for a while.
here is an example:
ubuntu at jammy-cvm:~$ dpkg -l nullboot
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-======================-============-=================================
ii nullboot 0.4.0-0ubuntu0.22.04.1 amd64 UEFI boot entry manager
ubuntu at jammy-cvm:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.1 LTS
Release: 22.04
Codename: jammy
then EFI vars are correctly set:
$ sudo efibootmgr
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0001
Boot0000* MsTemp
Boot0001* Ubuntu with kernel 5.15.0-1019-azure
# cat /boot/efi/EFI/ubuntu/BOOTX64.CSV
shimx64.efi,Ubuntu with kernel 5.15.0-1019-azure,\kernel.efi-5.15.0-1019-azure ,Ubuntu entry for kernel 5.15.0-1019-azure
and I can reinstall the kernel and reboot (re-sealing works).
** Tags removed: verification-needed verification-needed-jammy
** Tags added: verification-done verification-done-jammy
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1990504
Title:
nullboot 0.4.0 jammy SRU
Status in nullboot package in Ubuntu:
Invalid
Status in nullboot source package in Jammy:
Fix Committed
Bug description:
[Impact]
nullboot 0.4.0 adds an additional feature necessary for enablement of the target platform: writing JSON files with the boot order during image building, so that the boot entries can be configured at first booth.
I also correctly handles the case where the BootOrder variable was
deleted by populating it, instead of producing an error which IIRC was
also seen as part of the validation, but also significantly improves
testing.
[Test plan]
Gauthier Jolly will build images with the proposed package and boot them on Azure CVM.
[Where problems could occur]
The potential for regressions is low as the new code path uses the mock EFI variables implementation that the test suite uses, and is just a couple of ifs in the main code.
Any failure to write JSON files during image build can easily be
worked around by disabling that bit in the image building script,
first boot would be slower, so they are not exactly fatal.
If people relied on missing BootOrder producing an error, they see a
change in behavior.
It is unlikely anyone is using that in jammy, as it is closely tied to
Azure CVM, and we only enabled focal so far, so overall I think nobody
should be broken even if there were an issue.
[code review tips]
MockEfiVariables moves from efivars_test.go to efivars.go, it makes the diff a bit unwieldly.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/nullboot/+bug/1990504/+subscriptions
More information about the foundations-bugs
mailing list