The gzip compression of the rootfs is not parallel and takes a significant
amount of the test execution. By using zst, things are parallel and much
faster.
While this slightly reduces the test coverage of gz, it improves the coverage
of the nowadays widely used zstd compression.
Signed-off-by: Felix Moessbauer <
felix.mo...@siemens.com>
---
Note, that we also spend significant amount of time in bitbake parsing
(around ~5 minutes on some tests). I'll look into this as well.
On the repro test, I once saw the following error:
The following packages have unmet dependencies:
libc6-dev:i386 : Depends: linux-libc-dev:i386
I don't know exactly where this came from, but I'm also wondering why
we build the sbuild-chroot-target-db2m at all in the repro test.
Felix
meta-test/recipes-core/images/
isar-image-ci.bb | 2 +-
testsuite/repro-build-test.py | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/meta-test/recipes-core/images/
isar-image-ci.bb b/meta-test/recipes-core/images/
isar-image-ci.bb
index 9133da74..7f2b404d 100644
--- a/meta-test/recipes-core/images/
isar-image-ci.bb
+++ b/meta-test/recipes-core/images/
isar-image-ci.bb
@@ -19,7 +19,7 @@ WKS_FILE:qemuamd64:debian-bookworm ?= "multipart-efi.wks"
IMAGE_INSTALL:append:qemuamd64:debian-bookworm = " prebuilt-docker-img prebuilt-podman-img"
# qemuamd64-bullseye
-IMAGE_FSTYPES:append:qemuamd64:debian-bullseye ?= " cpio.gz tar.gz"
+IMAGE_FSTYPES:append:qemuamd64:debian-bullseye ?= " cpio.zst tar.zst"
WKS_FILE:qemuamd64:debian-bullseye ?= "sdimage-efi-btrfs"
IMAGE_INSTALL:append:qemuamd64:debian-bullseye = " expand-on-first-boot"
IMAGER_INSTALL:remove:qemuamd64:debian-bullseye ?= "${GRUB_BOOTLOADER_INSTALL}"
diff --git a/testsuite/repro-build-test.py b/testsuite/repro-build-test.py
index d24e8f84..c06269f5 100755
--- a/testsuite/repro-build-test.py
+++ b/testsuite/repro-build-test.py
@@ -21,9 +21,9 @@ class ReproBuild(CIBuilder):
'source_date_epoch', default=self.git_last_commit_timestamp()
)
self.init()
- self.build_repro_image(target, source_date_epoch, 'image1.tar.gz')
- self.build_repro_image(target, source_date_epoch, 'image2.tar.gz')
- self.compare_repro_image('image1.tar.gz', 'image2.tar.gz')
+ self.build_repro_image(target, source_date_epoch, 'image1.tar.zst')
+ self.build_repro_image(target, source_date_epoch, 'image2.tar.zst')
+ self.compare_repro_image('image1.tar.zst', 'image2.tar.zst')
def git_last_commit_timestamp(self):
return process.run('git log -1 --pretty=%ct').stdout.decode().strip()
@@ -33,10 +33,10 @@ class ReproBuild(CIBuilder):
machine, image_name = CIUtils.getVars(
'MACHINE', 'IMAGE_FULLNAME', target=target_name
)
- return f"{image_dir}/{machine}/{image_name}.tar.gz"
+ return f"{image_dir}/{machine}/{image_name}.tar.zst"
def build_repro_image(
- self, target, source_date_epoch=None, image_name='image.tar.gz'
+ self, target, source_date_epoch=None, image_name='image.tar.zst'
):
if not source_date_epoch:
self.error(
--
2.51.0