From bf9b8d36aba3c7a8c7a3ecfc4d00359985e745b6 Mon Sep 17 00:00:00 2001 From: John Mulligan Date: Sat, 8 Feb 2025 14:51:23 -0500 Subject: [PATCH] container: avoid installing docs using the dnf configuration Avoid installing docs by using the dnf configuration tsflags parameter, passing the nodocs flag. This tells dnf and rpm not to install documentation, such as manpages. Stop installing the docs just to delete them later with an `rm -rf` type command. Now the docs don't get installed in the first place, saving space, but the rpm is happy (`rpm -Va` no longer shows docs as 'missing'). Fixes: https://tracker.ceph.com/issues/69868 Signed-off-by: John Mulligan --- container/Containerfile | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/container/Containerfile b/container/Containerfile index 665e7991e8b..5fe9880267a 100644 --- a/container/Containerfile +++ b/container/Containerfile @@ -51,6 +51,15 @@ OSD_FLAVOR=${OSD_FLAVOR} # keeping run steps separate makes local rebuilds quick, but images are big without squash option #=================================================================================================== +# Disable documentation +# (assumes only [main] section exists) +RUN \ + if grep -q 'tsflags' /etc/dnf/dnf.conf ; then \ + sed -i 's/tsflags=.*/tsflags=nodocs/g' /etc/dnf/dnf.conf ; \ + else \ + echo "tsflags=nodocs" >> /etc/dnf/dnf.conf ; \ + fi + # Pre-reqs RUN dnf install -y --setopt=install_weak_deps=False epel-release jq @@ -201,7 +210,7 @@ RUN set -ex && \ rm -rf /var/lib/dnf/* && \ rm -f /var/lib/rpm/__db* && \ # remove unnecessary files with big impact - rm -rf /etc/selinux /usr/share/{doc,man,selinux} && \ + rm -rf /etc/selinux /usr/share/selinux && \ # don't keep compiled python binaries find / -xdev \( -name "*.pyc" -o -name "*.pyo" \) -delete && \ rm -f /etc/yum.repos.d/{ceph,ganesha,tcmu-runner,ceph-iscsi}.repo -- 2.39.5