FROM rockylinux:9 # Base image ENV GRADLE_VER=8.11 ENV GRADLE_HOME=/opt/gradle # Local change to disable mirrorlists RUN find /etc/yum.repos.d/ -type f -exec sed -i 's/^mirrorlist/#mirrorlist/;s/^#baseurl/baseurl/' {} \; RUN dnf makecache --refresh && \ dnf -y update RUN dnf -y install wget unzip && \ dnf -y clean all && rm -rf /var/cache RUN wget --output-document=/gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VER}-bin.zip" && \ unzip -d /tmp /gradle.zip && \ mv /tmp/gradle-${GRADLE_VER} /opt/gradle && \ ln -s ${GRADLE_HOME}/bin/gradle /usr/local/bin/gradle && \ rm -rf /gradle.zip ENV JRE_VER=17 RUN dnf -y install vim yum-utils createrepo_c bzip2 tar vim cargo nodejs \ jq java-${JRE_VER}-openjdk java-${JRE_VER}-openjdk-devel.x86_64 nmap-ncat \ python3.12-pip python3.12-lxml python3.12-requests && \ dnf -y update && \ ln -sf /usr/bin/python3.12 /usr/bin/python3 && \ dnf -y clean all && rm -rf /var/cache # Local image WORKDIR /tmp/gradle-wrapper-setup/default RUN touch settings.gradle.kts RUN gradle wrapper RUN ./gradlew build WORKDIR /tmp/gradle-wrapper-setup/v8.8 RUN touch settings.gradle.kts RUN gradle wrapper --gradle-version 8.8 RUN ./gradlew build WORKDIR /tmp/gradle-wrapper-setup/v8.10 RUN touch settings.gradle.kts RUN gradle wrapper --gradle-version 8.10 RUN ./gradlew build WORKDIR /workdir COPY requirements.txt . RUN python3 -m pip install -r requirements.txt COPY resolve-deps.sh . COPY src ./src ENV CUSTOMPYTHON=python3 CMD [ "/bin/sh", "./resolve-deps.sh" ]