mbox series

[isar-cip-core,RFC,v3,0/5] Adapt isar-cip-core to ISAR IMAGE_CMD_*

Message ID 20220610113302.1225351-1-Quirin.Gylstorff@siemens.com (mailing list archive)
Headers show
Series Adapt isar-cip-core to ISAR IMAGE_CMD_* | expand

Message

Gylstorff Quirin June 10, 2022, 11:32 a.m. UTC
From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This series adapt isar-cip-core to the IMAGE_CMD_* introduced in
ISAR commit [1]. See also ISAR API changelog[2].

This new feature remove the *.img from all wic images.

Also as new naming convention image recipes no longer end with `-img`.

The image types wic-swu-img and secure-wic-swu-img were removed.
Rename `squashfs-img` to squashfs according new naming scheme.

To use squashfs include:

    IMAGE_CLASSES += "squashfs"
    IMAGE_TYPEDEP_wic += "squashfs"


To create a verity based image to following line need to be added
to the local.conf or similar configuration:

    IMAGE_CLASSES += "verity"

The modifications for a read-only root file system are now part
of a bbclass which can be include directly into the image
recipe.

The modifications to generate a SWUpdate update package are
also no longer part of the image build process and in a seperate
bbclass. This class needs to be included in the image recipe.

Please check/test the interface changes for swupdate and read-only root
file system.

I tested qemu-amd64/qemu-arm64 with swupdate and secure boot.

Quirin

[1]: https://github.com/ilbers/isar/commit/f792fd0deed1ae1d9deb3ee28b1a1add96ecdf14
[2]: https://github.com/ilbers/isar/blob/next/RECIPE-API-CHANGELOG.md#changes-to-image-types

Changes in v2:
 - update ISAR to commit 1000df8e98b9a5849a7897698039687fd0cdd7d3 to avoid
   double gz compression for tar images. This also allows to drop the patch
   "0001-Fix-permissions-when-splitting-rootfs-folders-across.patch"
 - fix image option `kas/opt/wic-targz-img.yml` for ci build 
 - fix whitespace errors
 - used compressed rootfs in sw-description

Changes in v3:
 - adapt build of u-boot-qemu-arm64
 - fix qemu-arm64 swupdate build, adapt wic/qemu-arm64-efibootguard.wks.in to new image names

Quirin Gylstorff (5):
  ISAR update
  u-boot-qemu-arm64: Adapt to 'Do not use shell environment'
  start-qemu.sh: adapt to new image names
  Adapt swupdate and verity to use new IMAGE_CMD_*
  scripts/deploy-cip-core: Adapt to new image names

 ...u-img.bbclass => read-only-rootfs.bbclass} | 11 +---
 classes/secure-wic-swu-img.bbclass            | 15 ------
 ...{squashfs-img.bbclass => squashfs.bbclass} | 15 ++----
 ...{swupdate-img.bbclass => swupdate.bbclass} |  8 +--
 .../{verity-img.bbclass => verity.bbclass}    | 50 +++++++++----------
 classes/wic-targz-img.bbclass                 | 15 ------
 conf/machine/bbb.conf                         |  2 +-
 conf/machine/hihope-rzg2m.conf                |  2 +-
 conf/machine/iwg20m.conf                      |  2 +-
 conf/machine/qemu-amd64.conf                  |  2 +-
 conf/machine/qemu-arm.conf                    |  2 +-
 conf/machine/qemu-arm64.conf                  |  2 +-
 conf/machine/simatic-ipc227e.conf             |  2 +-
 kas-cip.yml                                   |  6 +--
 kas/opt/ebg-secure-boot-snakeoil.yml          |  3 +-
 kas/opt/efibootguard.yml                      |  2 +-
 kas/opt/swupdate.yml                          |  4 +-
 kas/opt/targz-img.yml                         |  2 +-
 kas/opt/wic-targz-img.yml                     |  2 +-
 ...when-splitting-rootfs-folders-across.patch | 35 -------------
 .../u-boot/files/{rules => rules.tmpl}        |  2 +-
 .../u-boot/u-boot-qemu-arm64_2022.04.bb       |  6 +--
 recipes-core/images/swupdate.inc              |  7 ++-
 .../initramfs-verity-hook_0.1.bb              |  2 +-
 scripts/deploy-cip-core.sh                    |  8 +--
 start-qemu.sh                                 |  8 +--
 wic/qemu-amd64-efibootguard-secureboot.wks.in |  4 +-
 wic/qemu-arm64-efibootguard-secureboot.wks.in |  4 +-
 wic/qemu-arm64-efibootguard.wks.in            |  4 +-
 wic/x86-efibootguard.wks.in                   |  4 +-
 30 files changed, 75 insertions(+), 156 deletions(-)
 rename classes/{wic-swu-img.bbclass => read-only-rootfs.bbclass} (75%)
 delete mode 100644 classes/secure-wic-swu-img.bbclass
 rename classes/{squashfs-img.bbclass => squashfs.bbclass} (66%)
 rename classes/{swupdate-img.bbclass => swupdate.bbclass} (92%)
 rename classes/{verity-img.bbclass => verity.bbclass} (78%)
 delete mode 100644 classes/wic-targz-img.bbclass
 delete mode 100644 patches/isar/0001-Fix-permissions-when-splitting-rootfs-folders-across.patch
 rename recipes-bsp/u-boot/files/{rules => rules.tmpl} (96%)

Comments

Jan Kiszka June 13, 2022, 11:02 a.m. UTC | #1
On 10.06.22 13:32, Quirin Gylstorff wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> This series adapt isar-cip-core to the IMAGE_CMD_* introduced in
> ISAR commit [1]. See also ISAR API changelog[2].
> 
> This new feature remove the *.img from all wic images.
> 
> Also as new naming convention image recipes no longer end with `-img`.
> 
> The image types wic-swu-img and secure-wic-swu-img were removed.
> Rename `squashfs-img` to squashfs according new naming scheme.
> 
> To use squashfs include:
> 
>     IMAGE_CLASSES += "squashfs"
>     IMAGE_TYPEDEP_wic += "squashfs"
> 
> 
> To create a verity based image to following line need to be added
> to the local.conf or similar configuration:
> 
>     IMAGE_CLASSES += "verity"
> 
> The modifications for a read-only root file system are now part
> of a bbclass which can be include directly into the image
> recipe.
> 
> The modifications to generate a SWUpdate update package are
> also no longer part of the image build process and in a seperate
> bbclass. This class needs to be included in the image recipe.
> 
> Please check/test the interface changes for swupdate and read-only root
> file system.
> 
> I tested qemu-amd64/qemu-arm64 with swupdate and secure boot.
> 
> Quirin
> 
> [1]: https://github.com/ilbers/isar/commit/f792fd0deed1ae1d9deb3ee28b1a1add96ecdf14
> [2]: https://github.com/ilbers/isar/blob/next/RECIPE-API-CHANGELOG.md#changes-to-image-types
> 
> Changes in v2:
>  - update ISAR to commit 1000df8e98b9a5849a7897698039687fd0cdd7d3 to avoid
>    double gz compression for tar images. This also allows to drop the patch
>    "0001-Fix-permissions-when-splitting-rootfs-folders-across.patch"
>  - fix image option `kas/opt/wic-targz-img.yml` for ci build 
>  - fix whitespace errors
>  - used compressed rootfs in sw-description
> 
> Changes in v3:
>  - adapt build of u-boot-qemu-arm64
>  - fix qemu-arm64 swupdate build, adapt wic/qemu-arm64-efibootguard.wks.in to new image names
> 
> Quirin Gylstorff (5):
>   ISAR update
>   u-boot-qemu-arm64: Adapt to 'Do not use shell environment'
>   start-qemu.sh: adapt to new image names
>   Adapt swupdate and verity to use new IMAGE_CMD_*
>   scripts/deploy-cip-core: Adapt to new image names
> 
>  ...u-img.bbclass => read-only-rootfs.bbclass} | 11 +---
>  classes/secure-wic-swu-img.bbclass            | 15 ------
>  ...{squashfs-img.bbclass => squashfs.bbclass} | 15 ++----
>  ...{swupdate-img.bbclass => swupdate.bbclass} |  8 +--
>  .../{verity-img.bbclass => verity.bbclass}    | 50 +++++++++----------
>  classes/wic-targz-img.bbclass                 | 15 ------
>  conf/machine/bbb.conf                         |  2 +-
>  conf/machine/hihope-rzg2m.conf                |  2 +-
>  conf/machine/iwg20m.conf                      |  2 +-
>  conf/machine/qemu-amd64.conf                  |  2 +-
>  conf/machine/qemu-arm.conf                    |  2 +-
>  conf/machine/qemu-arm64.conf                  |  2 +-
>  conf/machine/simatic-ipc227e.conf             |  2 +-
>  kas-cip.yml                                   |  6 +--
>  kas/opt/ebg-secure-boot-snakeoil.yml          |  3 +-
>  kas/opt/efibootguard.yml                      |  2 +-
>  kas/opt/swupdate.yml                          |  4 +-
>  kas/opt/targz-img.yml                         |  2 +-
>  kas/opt/wic-targz-img.yml                     |  2 +-
>  ...when-splitting-rootfs-folders-across.patch | 35 -------------
>  .../u-boot/files/{rules => rules.tmpl}        |  2 +-
>  .../u-boot/u-boot-qemu-arm64_2022.04.bb       |  6 +--
>  recipes-core/images/swupdate.inc              |  7 ++-
>  .../initramfs-verity-hook_0.1.bb              |  2 +-
>  scripts/deploy-cip-core.sh                    |  8 +--
>  start-qemu.sh                                 |  8 +--
>  wic/qemu-amd64-efibootguard-secureboot.wks.in |  4 +-
>  wic/qemu-arm64-efibootguard-secureboot.wks.in |  4 +-
>  wic/qemu-arm64-efibootguard.wks.in            |  4 +-
>  wic/x86-efibootguard.wks.in                   |  4 +-
>  30 files changed, 75 insertions(+), 156 deletions(-)
>  rename classes/{wic-swu-img.bbclass => read-only-rootfs.bbclass} (75%)
>  delete mode 100644 classes/secure-wic-swu-img.bbclass
>  rename classes/{squashfs-img.bbclass => squashfs.bbclass} (66%)
>  rename classes/{swupdate-img.bbclass => swupdate.bbclass} (92%)
>  rename classes/{verity-img.bbclass => verity.bbclass} (78%)
>  delete mode 100644 classes/wic-targz-img.bbclass
>  delete mode 100644 patches/isar/0001-Fix-permissions-when-splitting-rootfs-folders-across.patch
>  rename recipes-bsp/u-boot/files/{rules => rules.tmpl} (96%)
> 

Thanks, applied.

Jan