cosboot: support bzip2 compression XZ turned out to be much worse than gzip more tests in CI, even though it was better in a few local runs. Trying out bzip2 now. BUG=b/465210631 Change-Id: I2293e3689b586b1cb5fd6cbc1532994d032d9b02 Reviewed-on: https://cos-review.googlesource.com/c/cos/tools/+/146143 Reviewed-by: Miri Amarilio <mirilio@google.com> Cloud-Build: 228075978874@cloudbuild.gserviceaccount.com <228075978874@cloudbuild.gserviceaccount.com> Tested-by: Robert Kolchmeyer <rkolchmeyer@google.com> Reviewed-by: He Gao <hegao@google.com>
diff --git a/src/cmd/oem_preloader/Dockerfile b/src/cmd/oem_preloader/Dockerfile index c5a0d48..3c21e6c 100644 --- a/src/cmd/oem_preloader/Dockerfile +++ b/src/cmd/oem_preloader/Dockerfile
@@ -13,6 +13,6 @@ # Install minimal tools needed. RUN apt-get update && \ - apt-get install -y --no-install-recommends sudo util-linux fdisk cryptsetup e2fsprogs mtools sed gzip xz-utils + apt-get install -y --no-install-recommends sudo util-linux fdisk cryptsetup e2fsprogs mtools sed gzip xz-utils bzip2 ENTRYPOINT ["/oem-preloader"]
diff --git a/src/pkg/cosboot/bzimage.go b/src/pkg/cosboot/bzimage.go index b39016c..993b3bd 100644 --- a/src/pkg/cosboot/bzimage.go +++ b/src/pkg/cosboot/bzimage.go
@@ -59,6 +59,14 @@ zipCmd: "xz", zipArgs: []string{"-c", "--check=crc32", "--threads=1", "--x86", "--lzma2=,dict=128MiB"}, }, + { + name: "bzip2", + magic: []byte{0x42, 0x5a, 0x68}, + unzipCmd: "bunzip2", + unzipArgs: []string{"-c"}, + zipCmd: "bzip2", + zipArgs: []string{"-c", "-9"}, + }, } func elfFromBZImageWithOffset(img []byte) ([]byte, int, compression, error) {