From 19ecc16d97e4249e700d0d118839ea4c7ae61d0e Mon Sep 17 00:00:00 2001 From: Steve Baker Date: Wed, 2 Feb 2022 09:11:14 +1300 Subject: [PATCH] Revert "Use rpm -e instead of dnf for cleaning old kernels" Using rpm -e to remove old kernels fails when other packages also depend on the removed kernel. This change reverts back to using dnf to remove the kernel, but also sets the config value protect_running_kernel=False to avoid the issue where the build host kernel version matches the version of the package being deleted. reverts commit 1ac31afd6297c2a9a0673b0cde17e18230c3b977. Change-Id: Ie58630c23a34f2db34f3934abbd0c1076ab9d835 --- .../redhat-common/finalise.d/01-clean-old-kernels | 2 +- ...-to-erase-in-case-running-kernel-0401f78d63daca77.yaml | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 releasenotes/notes/fix-dnf-clean-old-kernels-use-rpm-to-erase-in-case-running-kernel-0401f78d63daca77.yaml diff --git a/diskimage_builder/elements/redhat-common/finalise.d/01-clean-old-kernels b/diskimage_builder/elements/redhat-common/finalise.d/01-clean-old-kernels index 23d8619e..1aa4d4c4 100755 --- a/diskimage_builder/elements/redhat-common/finalise.d/01-clean-old-kernels +++ b/diskimage_builder/elements/redhat-common/finalise.d/01-clean-old-kernels @@ -18,7 +18,7 @@ if [[ ${YUM} == "dnf" ]]; then # http://dnf.readthedocs.org/en/latest/cli_vs_yum.html _old_kernels="$(dnf repoquery --installonly --latest-limit=-1 -q)" if [[ -n "${_old_kernels}" ]]; then - rpm -e ${_old_kernels} + dnf remove -y --setopt=protect_running_kernel=False ${_old_kernels} fi else install-packages yum-utils diff --git a/releasenotes/notes/fix-dnf-clean-old-kernels-use-rpm-to-erase-in-case-running-kernel-0401f78d63daca77.yaml b/releasenotes/notes/fix-dnf-clean-old-kernels-use-rpm-to-erase-in-case-running-kernel-0401f78d63daca77.yaml deleted file mode 100644 index 970eeadf..00000000 --- a/releasenotes/notes/fix-dnf-clean-old-kernels-use-rpm-to-erase-in-case-running-kernel-0401f78d63daca77.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -fixes: - - | - Fixed an issue where cleaning old kernels on systems runing ``dnf`` would - fail in case the kernel packages being removed matches the running kernel - of the system building the image. See Bug: `1623409 - `_. -