From 3a9d48054ef3a8f403d12a9cbd7b0e207f448bf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Le=20Meur?= Date: Thu, 12 Oct 2023 12:17:20 +0200 Subject: [PATCH] Revert "keep jdk21-preview for architectures unsupported by eclipse-temurin:21 image" "also remove linux-s390x for jdk21" "remove linux-arm32 and linux-ppc64le architectures for jdk21, unavailable in eclipse-temurin images" This reverts commits bce36e241d561465c7ceea558bb4144979199280, d154f2e4bd7ac0ac52f70f80e464f770deecc8b3 and a900d2dd1f3787190863b624737ce3895c59761c --- debian/21/Dockerfile | 91 -------------------------------------------- docker-bake.hcl | 27 +++---------- 2 files changed, 5 insertions(+), 113 deletions(-) delete mode 100644 debian/21/Dockerfile diff --git a/debian/21/Dockerfile b/debian/21/Dockerfile deleted file mode 100644 index 84cc34444..000000000 --- a/debian/21/Dockerfile +++ /dev/null @@ -1,91 +0,0 @@ -ARG DEBIAN_RELEASE=bookworm-20230904 -FROM debian:"${DEBIAN_RELEASE}"-slim as jre-build -ARG JAVA_VERSION -ARG TARGETPLATFORM - -SHELL ["/bin/bash", "-o", "pipefail", "-c"] - -RUN set -x; apt-get update \ - && apt-get install --no-install-recommends -y \ - ca-certificates \ - jq \ - wget \ - && BUILD_NUMBER=$(echo $JAVA_VERSION | cut -d'+' -f2) \ - && JAVA_MAJOR_VERSION=$(echo $JAVA_VERSION | cut -d'+' -f1) \ - && JAVA_VERSION_ENCODED=$(echo "$JAVA_VERSION" | jq "@uri" -jRr) \ - && CONVERTED_ARCH=$(arch | sed -e 's/x86_64/x64/' -e 's/armv7l/arm/') \ - && wget --quiet https://github.com/adoptium/temurin"${JAVA_MAJOR_VERSION}"-binaries/releases/download/jdk-"${JAVA_VERSION_ENCODED}"-ea-beta/OpenJDK"${JAVA_MAJOR_VERSION}"U-jdk_"${CONVERTED_ARCH}"_linux_hotspot_ea_"${JAVA_MAJOR_VERSION}"-0-"${BUILD_NUMBER}".tar.gz -O /tmp/jdk.tar.gz \ - && tar -xzf /tmp/jdk.tar.gz -C /opt/ \ - && rm -f /tmp/jdk.tar.gz - -ENV PATH=/opt/jdk-${JAVA_VERSION}/bin:$PATH - -RUN if test "${TARGETPLATFORM}" != 'linux/arm/v7'; then \ - jlink \ - --add-modules ALL-MODULE-PATH \ - --no-man-pages \ - --compress=zip-6 \ - --output /javaruntime; \ - # It is acceptable to have a larger image in arm/v7 (arm 32 bits) environment. - # Because jlink fails with the error "jmods: Value too large for defined data type" error. - else \ - cp -r "/opt/jdk-${JAVA_VERSION}" /javaruntime; \ - fi - -FROM debian:"${DEBIAN_RELEASE}" AS build - -ARG user=jenkins -ARG group=jenkins -ARG uid=1000 -ARG gid=1000 - -RUN groupadd -g "${gid}" "${group}" \ - && useradd -l -c "Jenkins user" -d /home/"${user}" -u "${uid}" -g "${gid}" -m "${user}" - -ARG AGENT_WORKDIR=/home/"${user}"/agent -ENV TZ=Etc/UTC - -## Always use the latest Debian packages: no need for versions -# hadolint ignore=DL3008 -RUN apt-get update \ - && apt-get --yes --no-install-recommends install \ - ca-certificates \ - curl \ - fontconfig \ - git \ - git-lfs \ - less \ - netbase \ - openssh-client \ - patch \ - tzdata \ - && apt-get clean \ - && rm -rf /tmp/* /var/cache/* /usr/share/doc/* /usr/share/man/* /var/lib/apt/lists/* - -ARG VERSION=3148.v532a_7e715ee3 -ADD --chown="${user}":"${group}" "https://repo.jenkins-ci.org/public/org/jenkins-ci/main/remoting/${VERSION}/remoting-${VERSION}.jar" /usr/share/jenkins/agent.jar -RUN chmod 0644 /usr/share/jenkins/agent.jar \ - && ln -sf /usr/share/jenkins/agent.jar /usr/share/jenkins/slave.jar - -ENV LANG C.UTF-8 - -ENV JAVA_HOME=/opt/java/openjdk -COPY --from=jre-build /javaruntime "$JAVA_HOME" -ENV PATH="${JAVA_HOME}/bin:${PATH}" - -USER "${user}" -ENV AGENT_WORKDIR=${AGENT_WORKDIR} -RUN mkdir /home/${user}/.jenkins && mkdir -p "${AGENT_WORKDIR}" - -VOLUME /home/"${user}"/.jenkins -VOLUME "${AGENT_WORKDIR}" -WORKDIR /home/"${user}" -ENV user=${user} -LABEL \ - org.opencontainers.image.vendor="Jenkins project" \ - org.opencontainers.image.title="Official Jenkins Agent Base Docker image" \ - org.opencontainers.image.description="This is a base image, which provides the Jenkins agent executable (agent.jar)" \ - org.opencontainers.image.version="${VERSION}" \ - org.opencontainers.image.url="https://www.jenkins.io/" \ - org.opencontainers.image.source="https://github.com/jenkinsci/docker-agent" \ - org.opencontainers.image.licenses="MIT" diff --git a/docker-bake.hcl b/docker-bake.hcl index d66cd23a4..5d1a80e2f 100644 --- a/docker-bake.hcl +++ b/docker-bake.hcl @@ -23,14 +23,14 @@ group "linux-arm32" { targets = [ "debian_jdk11", "debian_jdk17", - "debian_jdk21_preview" + "debian_jdk21" ] } group "linux-s390x" { targets = [ "debian_jdk11", - "debian_jdk21_preview" + "debian_jdk21" ] } @@ -38,7 +38,7 @@ group "linux-ppc64le" { targets = [ "debian_jdk11", "debian_jdk17", - "debian_jdk21_preview" + "debian_jdk21" ] } @@ -212,6 +212,7 @@ target "debian_jdk17" { platforms = ["linux/amd64", "linux/arm64", "linux/arm/v7", "linux/ppc64le"] } + target "debian_jdk21" { dockerfile = "debian/Dockerfile" context = "." @@ -227,23 +228,5 @@ target "debian_jdk21" { "${REGISTRY}/${JENKINS_REPO}:latest-bookworm-jdk21", "${REGISTRY}/${JENKINS_REPO}:latest-jdk21", ] - platforms = ["linux/amd64", "linux/arm64"] -} - -target "debian_jdk21_preview" { - dockerfile = "debian/21/Dockerfile" - context = "." - args = { - JAVA_VERSION = JAVA21_VERSION - VERSION = REMOTING_VERSION - DEBIAN_RELEASE = DEBIAN_RELEASE - } - tags = [ - equal(ON_TAG, "true") ? "${REGISTRY}/${JENKINS_REPO}:${REMOTING_VERSION}-${BUILD_NUMBER}-jdk21-preview" : "", - "${REGISTRY}/${JENKINS_REPO}:bookworm-jdk21-preview", - "${REGISTRY}/${JENKINS_REPO}:jdk21-preview", - "${REGISTRY}/${JENKINS_REPO}:latest-bookworm-jdk21-preview", - "${REGISTRY}/${JENKINS_REPO}:latest-jdk21-preview", - ] - platforms = ["linux/ppc64le", "linux/s390x", "linux/arm/v7"] + platforms = ["linux/amd64", "linux/arm64", "linux/ppc64le", "linux/s390x", "linux/arm/v7"] }