From 69f33458724653226096e9e1744a5599fe315cb9 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 (cherry picked from commit bf9b8d36aba3c7a8c7a3ecfc4d00359985e745b6) --- container/Containerfile | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/container/Containerfile b/container/Containerfile index 4c5af02cb44b..2ab00817a71e 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 @@ -200,7 +209,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.47.3