From 1e2b28ac49f5e09f897bf73235412d04e37f6174 Mon Sep 17 00:00:00 2001 From: Nick Porter Date: Fri, 10 May 2024 10:48:07 +0100 Subject: [PATCH] Ensure yum is installed for rpm Docker builds --- scripts/docker/build/rocky9/Dockerfile | 7 +++++++ scripts/docker/build/rocky9/Dockerfile.cb | 5 +++++ scripts/docker/m4/crossbuild.rpm.m4 | 5 +++++ scripts/docker/m4/docker.rpm.m4 | 8 ++++++++ 4 files changed, 25 insertions(+) diff --git a/scripts/docker/build/rocky9/Dockerfile b/scripts/docker/build/rocky9/Dockerfile index 372778c177..039816beb8 100644 --- a/scripts/docker/build/rocky9/Dockerfile +++ b/scripts/docker/build/rocky9/Dockerfile @@ -8,6 +8,11 @@ FROM ${from} as build RUN rpmkeys --import /etc/pki/rpm-gpg/RPM-GPG-KEY-Rocky-9 +# +# Ensure yum is installed. Some docker images only have microdnf +# +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + # # Install build tools # @@ -113,6 +118,8 @@ RUN rpm --import https://packages.networkradius.com/pgp/packages@networkradius.c # Other requirements # +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + # Needed for mysql-libs on Rocky 9 RUN yum install -y yum-utils RUN yum config-manager --enable crb diff --git a/scripts/docker/build/rocky9/Dockerfile.cb b/scripts/docker/build/rocky9/Dockerfile.cb index 1bb069cf26..163e313891 100644 --- a/scripts/docker/build/rocky9/Dockerfile.cb +++ b/scripts/docker/build/rocky9/Dockerfile.cb @@ -6,6 +6,11 @@ ARG from=rockylinux/rockylinux:9 FROM ${from} as build +# +# Ensure yum is installed. Some docker images only have dnf or microdnf +# +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + # # Install devtools like make and git and the EPEL # repository for freetds and hiredis diff --git a/scripts/docker/m4/crossbuild.rpm.m4 b/scripts/docker/m4/crossbuild.rpm.m4 index 1c7465fb52..e2f966293b 100644 --- a/scripts/docker/m4/crossbuild.rpm.m4 +++ b/scripts/docker/m4/crossbuild.rpm.m4 @@ -1,6 +1,11 @@ ARG from=DOCKER_IMAGE FROM ${from} as build +# +# Ensure yum is installed. Some docker images only have dnf or microdnf +# +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + # # Install devtools like make and git and the EPEL # repository for freetds and hiredis diff --git a/scripts/docker/m4/docker.rpm.m4 b/scripts/docker/m4/docker.rpm.m4 index d75f821658..82a641d527 100644 --- a/scripts/docker/m4/docker.rpm.m4 +++ b/scripts/docker/m4/docker.rpm.m4 @@ -7,6 +7,12 @@ RUN rpmkeys --import /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial ifelse(OS_VER, 9, `dnl RUN rpmkeys --import /etc/pki/rpm-gpg/RPM-GPG-KEY-Rocky-9 ') + +# +# Ensure yum is installed. Some docker images only have dnf or microdnf +# +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + # # Install build tools # @@ -149,6 +155,8 @@ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-LTB-project'\ })dnl changequote({`}, {'})dnl +RUN if [ ! -e /usr/bin/yum ]; then if [ -e /usr/bin/dnf ]; then dnf install -y yum; else microdnf install -y yum; fi; fi + ifelse(OS_VER, 9, `dnl # Needed for mysql-libs on Rocky 9 RUN yum install -y yum-utils -- 2.47.3