diff mbox series

[cip-core,isar-cip-core] fix: swupdate_2021.11 with efibootguard

Message ID 20240415095749.572576-1-Quirin.Gylstorff@siemens.com (mailing list archive)
State New
Headers show
Series [cip-core,isar-cip-core] fix: swupdate_2021.11 with efibootguard | expand

Commit Message

Gylstorff Quirin April 15, 2024, 9:54 a.m. UTC
From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This fixes a regression introduced with
5e2c207abae61e073bc732d0b93ba390891cd0c7 by readding the bootloader
selection with DEB_BUILD_PROFILES for SWUpdate 2021.11.

SWUpdate 2021.11 selects the bootloader at  compile time instead
of runtime. This fixes the following error message during installing
a binary update:

 [INFO ] : SWUPDATE running :  Installation in progress
 [TRACE] : SWUPDATE running :  [install_single_image] : Found installer
 for stream cip-core-image-cip-core-bookworm-qemu-amd64.squashfs roundrobin
 [TRACE] : SWUPDATE running :  [notify_helper] : Round Robin Handler: No
 compiled-in config found, trying /etc/swupdate.handler.ini
 [ERROR] : SWUPDATE failed [0] ERROR : Round Robin Handler: Error getting
 key 'kernelfile' from bootloader environment.

Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb | 9 +++++++++
 1 file changed, 9 insertions(+)

Comments

Jan Kiszka April 16, 2024, 4:34 p.m. UTC | #1
On 15.04.24 11:54, Quirin Gylstorff wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> This fixes a regression introduced with
> 5e2c207abae61e073bc732d0b93ba390891cd0c7 by readding the bootloader
> selection with DEB_BUILD_PROFILES for SWUpdate 2021.11.
> 
> SWUpdate 2021.11 selects the bootloader at  compile time instead
> of runtime. This fixes the following error message during installing
> a binary update:
> 
>  [INFO ] : SWUPDATE running :  Installation in progress
>  [TRACE] : SWUPDATE running :  [install_single_image] : Found installer
>  for stream cip-core-image-cip-core-bookworm-qemu-amd64.squashfs roundrobin
>  [TRACE] : SWUPDATE running :  [notify_helper] : Round Robin Handler: No
>  compiled-in config found, trying /etc/swupdate.handler.ini
>  [ERROR] : SWUPDATE failed [0] ERROR : Round Robin Handler: Error getting
>  key 'kernelfile' from bootloader environment.
> 
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
>  recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb b/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
> index 0039116..bb98ede 100644
> --- a/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
> +++ b/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
> @@ -33,6 +33,15 @@ SRC_URI += "file://0001-debian-Remove-SWUpdate-USB-service-and-Udev-rules.patch
>  # DEPENDS += "swupdate-handlers"
>  # GBP_DEPENDS += "swupdate-handlers"
>  # DEB_BUILD_PROFILES += "pkg.swupdate.embeddedlua"
> +def get_bootloader_build_profile(d):
> +    bootloader = d.getVar("SWUPDATE_BOOTLOADER") or ""
> +    if bootloader == "efibootguard":
> +        return "pkg.swupdate.efibootguard"
> +    if bootloader == "u-boot":
> +        return "pkg.swupdate.uboot"
> +    return ""
> +
> +DEB_BUILD_PROFILES += "${@get_bootloader_build_profile(d)}"
>  
>  # modify for debian buster build
>  SRC_URI:append = " file://0006-debian-prepare-build-for-isar-debian-buster.patch"

Thanks, applied (with one extra newline).

Jan
diff mbox series

Patch

diff --git a/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb b/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
index 0039116..bb98ede 100644
--- a/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
+++ b/recipes-core/swupdate/swupdate_2021.11-1+debian-gbp.bb
@@ -33,6 +33,15 @@  SRC_URI += "file://0001-debian-Remove-SWUpdate-USB-service-and-Udev-rules.patch
 # DEPENDS += "swupdate-handlers"
 # GBP_DEPENDS += "swupdate-handlers"
 # DEB_BUILD_PROFILES += "pkg.swupdate.embeddedlua"
+def get_bootloader_build_profile(d):
+    bootloader = d.getVar("SWUPDATE_BOOTLOADER") or ""
+    if bootloader == "efibootguard":
+        return "pkg.swupdate.efibootguard"
+    if bootloader == "u-boot":
+        return "pkg.swupdate.uboot"
+    return ""
+
+DEB_BUILD_PROFILES += "${@get_bootloader_build_profile(d)}"
 
 # modify for debian buster build
 SRC_URI:append = " file://0006-debian-prepare-build-for-isar-debian-buster.patch"