cb0e0e903d
As described in the comment, there is a dnf equivalent of this command that doesn't require us installing yum-utils (which drags in yum on dnf-only systems such as f23) This is a small consequence to this -- due to us not installing yum-utils some installs will now be completely yum free. This causes a breakage in ironic-agent 99-remove-extra-packages where we remove the yum package. There is a long-standing bug/feature where missing packages in a group of packages do not cause yum/dnf to exit with failure, but uninstalling a single package will. Because we have made the systems yum-free, the uninstall of yum can fail in this corner case. It has always been like this, so I'm in favour of the "ain't broke" approach. To work-around this, I have just put yum into the existing list of packages to be cleaned up. I have added a note to the yum installer taking note of this behaviour for future reference. Change-Id: I8bbdc07ccdb89a105b4fc70d5a215077c42fcd03
21 lines
461 B
Bash
Executable file
21 lines
461 B
Bash
Executable file
#!/bin/bash
|
|
|
|
if [ ${DIB_DEBUG_TRACE:-0} -gt 0 ]; then
|
|
set -x
|
|
fi
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
YUM=${YUM:-yum}
|
|
|
|
if [[ ${YUM} == "dnf" ]]; then
|
|
# cribbed from
|
|
# http://dnf.readthedocs.org/en/latest/cli_vs_yum.html
|
|
_old_kernels="$(dnf repoquery --installonly --latest-limit -1 -q)"
|
|
if [[ -n "${_old_kernels}" ]]; then
|
|
dnf remove -y ${_old_kernels}
|
|
fi
|
|
else
|
|
install-packages yum-utils
|
|
package-cleanup --oldkernels -y --count=1
|
|
fi
|