From 13deab75c29825cbe6390d8efccbaae1e7b5315c Mon Sep 17 00:00:00 2001 From: Zygmunt Krynicki Date: Wed, 26 Mar 2025 10:53:15 +0100 Subject: [PATCH] ci: upgrade all packages in CI We are seeing some test failures caused by the fact that a fixed kernel, while available, is not installed the CI image. Since cloud-init does not itself offer a way to express precise dependency on a package version we may use a crude replacement of upgrading all the packages at image construction time. The next time this happens all we need is to touch the .image-garden.mk file, so that it is more recent than the image kept in CI cache for the re-generation to occur. Signed-off-by: Zygmunt Krynicki (cherry picked from commit f43221d9457e1fccd421dff4193dd7e67e43c230) Signed-off-by: Ryan Lee --- .image-garden.mk | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.image-garden.mk b/.image-garden.mk index ade70c704..a7cfc6c77 100644 --- a/.image-garden.mk +++ b/.image-garden.mk @@ -2,6 +2,11 @@ # All the package installation happens through cloud-init profiles defined # below. +# NOTE: Should the kernel be out of date, just increment this value. Make will +# re-create the image whenever the .image-garden.mk file is more recent than +# the image itself. In reality all you need is touch(1), but this is more apt. +unused=1 + # This is the cloud-init user-data profile for all Debian systems. Note that it # is an extension of the default profile necessary for operation of # image-garden. @@ -36,6 +41,12 @@ packages: - python3-ttkthemes - swig - toybox +# Update all the packages. This allows us to be on the up-to-date kernel +# version that we cannot otherwise easily select with cloud init alone. Note +# that we do not need to reboot the system as image garden shuts down the image +# after first boot. On subsequent boot we will be running the latest kernel. +package_upgrade: true +package_update: true endef # Ubuntu shares cloud-init profile with Debian. @@ -79,6 +90,9 @@ packages: - python311-devel - swig - which +# See above for rationale. +package_upgrade: true +package_update: true endef define FEDORA_CLOUD_INIT_USER_DATA_TEMPLATE @@ -108,4 +122,7 @@ packages: - python3-notify2 - python3-tkinter - swig +# See above for rationale. +package_upgrade: true +package_update: true endef