[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH for-4.19 4/4] CI: Rework the CentOS7 container



CentOS 7 is fully End-of-life as of 2024-06-30, and the Yum repo configuration
points at URLs which have become non-existent.

First, start by using a heredoc RUN for legibility.  It's important to use
`set -e` to offset the fact that we're no longer chaining every command
together with an &&.

Also, because we're using a single RUN command to perform all RPM operations,
we no longer need to work around the OverlayFS bug.

Adjust the CentOS-*.repo files to point at vault.centos.org.

Take the opportunity to split the Xen deps from Tools deps, and to adjust the
other packages we use:

 * We need bzip2-devel for the dombuilder, not just bzip2.
 * zstd-devel is another optional dependency since the last time this package
   list was refreshed.
 * openssl-devel hasn't been a dependency since Xen 4.6.
 * We long ago ceased being able to build Qemu and SeaBIOS in this container,
   so drop their dependencies too.

Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
CC: Anthony PERARD <anthony.perard@xxxxxxxxxx>
CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
CC: Doug Goldstein <cardoe@xxxxxxxxxx>
CC: Roger Pau Monné <roger.pau@xxxxxxxxxx>
CC: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
---
 automation/build/centos/7.dockerfile | 70 +++++++++++++++-------------
 1 file changed, 37 insertions(+), 33 deletions(-)

diff --git a/automation/build/centos/7.dockerfile 
b/automation/build/centos/7.dockerfile
index 657550f308bb..9e66d72a5bd5 100644
--- a/automation/build/centos/7.dockerfile
+++ b/automation/build/centos/7.dockerfile
@@ -6,44 +6,48 @@ LABEL maintainer.name="The Xen Project" \
 RUN mkdir /build
 WORKDIR /build
 
-# work around https://github.com/moby/moby/issues/10180
-# and add EPEL for dev86
-RUN rpm --rebuilddb && \
-    yum -y install \
-        yum-plugin-ovl \
-        epel-release \
-    && yum clean all && \
-    rm -rf /var/cache/yum
+RUN <<EOF
+    set -e
+
+    # Fix up Yum config now that mirror.centos.org doesn't exist
+    sed -e 's/mirror.centos.org/vault.centos.org/g' \
+        -e 's/^#.*baseurl=https\?/baseurl=https/g' \
+        -e 's/^mirrorlist=https\?/#mirrorlist=https/g' \
+        -i /etc/yum.repos.d/*.repo
+
+    # Add the EPEL repo to get dev86
+    yum -y install epel-release
+
+    yum -y update
 
-# install Xen depends
-RUN yum -y update \
-    && yum -y install \
+    # Xen deps
+    yum -y install \
+        bison \
+        binutils \
+        checkpolicy \
+        flex \
         gcc \
+        make \
+
+    # Tools/stubdom/docs deps
+    yum -y install \
+        acpica-tools \
+        bzip2-devel \
+        dev86 \
         gcc-c++ \
-        ncurses-devel \
-        zlib-devel \
-        openssl-devel \
-        python-devel \
+        git \
         libuuid-devel \
+        ncurses-devel \
+        patch \
         pkgconfig \
-        flex \
-        bison \
-        libaio-devel \
-        glib2-devel \
-        yajl-devel \
-        pixman-devel \
-        glibc-devel \
-        make \
-        binutils \
-        git \
-        wget \
-        acpica-tools \
+        python-devel \
         python-markdown \
-        patch \
-        checkpolicy \
-        dev86 \
+        wget \
         xz-devel \
-        bzip2 \
-        nasm \
-    && yum clean all && \
+        yajl-devel \
+        zlib-devel \
+        zstd-devel \
+
+    yum clean all
     rm -rf /var/cache/yum
+EOF
-- 
2.39.2




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.