#!/bin/bash # Script to verify RPM availability on CentOS 3.9 vault before building set -e CENTOS_VAULT="https://archive.kernel.org/centos-vault/3.9/os/i386/RedHat/RPMS" # RPMs to verify (from build-docker-image.sh) RPMS=( "basesystem-8.0-2.centos.0.noarch.rpm" "filesystem-2.2.1-3.centos.1.i386.rpm" "setup-2.5.27-1.noarch.rpm" "glibc-2.3.2-95.50.i386.rpm" "glibc-common-2.3.2-95.50.i386.rpm" "glibc-devel-2.3.2-95.50.i386.rpm" "glibc-headers-2.3.2-95.50.i386.rpm" "glibc-kernheaders-2.4-8.34.5.i386.rpm" "bash-2.05b-41.7.centos.0.i386.rpm" "coreutils-4.5.3-28.7.i386.rpm" "grep-2.5.1-24.6.i386.rpm" "sed-4.0.7-9.el3.i386.rpm" "gawk-3.1.1-9.i386.rpm" "findutils-4.1.7-9.1.i386.rpm" "util-linux-2.11y-31.23.i386.rpm" "compat-libstdc++-7.3-2.96.128.i386.rpm" "libstdc++-3.2.3-59.i386.rpm" "libstdc++-devel-3.2.3-59.i386.rpm" "gcc-3.2.3-59.i386.rpm" "gcc-c++-3.2.3-59.i386.rpm" "cpp-3.2.3-59.i386.rpm" "libgcc-3.2.3-59.i386.rpm" "make-3.79.1-17.1.i386.rpm" "binutils-2.14.90.0.4-42.i386.rpm" "libtool-1.4.3-6.i386.rpm" "libtool-libs-1.4.3-6.i386.rpm" "autoconf-2.57-3.noarch.rpm" "automake-1.6.3-5.noarch.rpm" "m4-1.4.1-13.i386.rpm" "zlib-1.1.4-10.EL3.i386.rpm" "zlib-devel-1.1.4-10.EL3.i386.rpm" "ncurses-5.3-9.4.i386.rpm" "ncurses-devel-5.3-9.4.i386.rpm" "readline-4.3-5.2.i386.rpm" "readline-devel-4.3-5.2.i386.rpm" "tar-1.13.25-15.RHEL3.i386.rpm" "gzip-1.3.3-14.rhel3.i386.rpm" "bzip2-1.0.2-11.EL3.4.i386.rpm" "bzip2-libs-1.0.2-11.EL3.4.i386.rpm" "patch-2.5.4-16.i386.rpm" "diffutils-2.8.1-8.i386.rpm" "which-2.14-7.i386.rpm" "info-4.5-3.el3.1.i386.rpm" "texinfo-4.5-3.el3.1.i386.rpm" ) echo "======================================" echo "CentOS 3.9 RPM Verification" echo "======================================" echo echo "Checking ${#RPMS[@]} RPMs on CentOS vault..." echo FOUND=0 NOT_FOUND=0 ERRORS="" for rpm in "${RPMS[@]}"; do printf "Checking %-50s ... " "$rpm" # Use HEAD request to check if file exists if curl --output /dev/null --silent --head --fail "${CENTOS_VAULT}/${rpm}"; then echo "✓ OK" FOUND=$((FOUND + 1)) else echo "✗ NOT FOUND" NOT_FOUND=$((NOT_FOUND + 1)) ERRORS="${ERRORS}\n - $rpm" fi done echo echo "======================================" echo "Summary:" echo "======================================" echo "Found: $FOUND" echo "Not Found: $NOT_FOUND" echo "Total: ${#RPMS[@]}" echo if [ $NOT_FOUND -gt 0 ]; then echo "❌ Missing RPMs:$ERRORS" echo echo "Please update build-docker-image.sh with correct filenames." exit 1 else echo "✅ All RPMs are available!" echo echo "You can now run: ./build-docker-image.sh" fi