From 5a3eb047715586cd57925196f90f560c570a7001 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 18 Jul 2024 00:43:09 +0200 Subject: [PATCH 01/35] Update Dockerfiles (#590) * dockerfile: automated nightly updates * dockerfile: automated nightly updates * dockerfile: automated nightly updates --- 11/jdk/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 11/jdk/ubuntu/focal/Dockerfile | 22 +++------------------- 11/jdk/ubuntu/jammy/Dockerfile | 22 +++------------------- 11/jdk/ubuntu/noble/Dockerfile | 22 +++------------------- 11/jre/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 11/jre/ubuntu/focal/Dockerfile | 22 +++------------------- 11/jre/ubuntu/jammy/Dockerfile | 22 +++------------------- 11/jre/ubuntu/noble/Dockerfile | 22 +++------------------- 17/jdk/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 17/jdk/ubuntu/focal/Dockerfile | 22 +++------------------- 17/jdk/ubuntu/jammy/Dockerfile | 22 +++------------------- 17/jdk/ubuntu/noble/Dockerfile | 22 +++------------------- 17/jre/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 17/jre/ubuntu/focal/Dockerfile | 22 +++------------------- 17/jre/ubuntu/jammy/Dockerfile | 22 +++------------------- 17/jre/ubuntu/noble/Dockerfile | 22 +++------------------- 21/jdk/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 21/jdk/ubuntu/jammy/Dockerfile | 18 +++--------------- 21/jdk/ubuntu/noble/Dockerfile | 18 +++--------------- 21/jre/ubi/ubi9-minimal/Dockerfile | 18 +++--------------- 21/jre/ubuntu/jammy/Dockerfile | 18 +++--------------- 21/jre/ubuntu/noble/Dockerfile | 18 +++--------------- 22/jdk/ubi/ubi9-minimal/Dockerfile | 14 +++----------- 22/jdk/ubuntu/jammy/Dockerfile | 14 +++----------- 22/jdk/ubuntu/noble/Dockerfile | 14 +++----------- 22/jre/ubi/ubi9-minimal/Dockerfile | 14 +++----------- 22/jre/ubuntu/jammy/Dockerfile | 14 +++----------- 22/jre/ubuntu/noble/Dockerfile | 14 +++----------- 28 files changed, 84 insertions(+), 444 deletions(-) diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index bc2b48361..7e6fdf22a 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='e00476a7be3c4adfa9b3d55d30768967fd246a8352e518894e183fa444d4d3ce'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='f56068bb64c6bf858894f75c2bc261f54db32932422eb07527f36ae40046e9a0'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='cf06c3e41acfaeda77112ac04f5a711cafe9fa9ac04dff758696fe7e8d66a0ea'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='23e47ea7a3015be3240f21185fd902adebdcf76530757c9b482c7eb5bd3417c2'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index b4a2286a3..b50b24aa3 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='23e47ea7a3015be3240f21185fd902adebdcf76530757c9b482c7eb5bd3417c2'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='e00476a7be3c4adfa9b3d55d30768967fd246a8352e518894e183fa444d4d3ce'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='8077edc07a57d846c3d11286a7caf05ed6ca6d6c1234bf0e03611f18e187f075'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='f56068bb64c6bf858894f75c2bc261f54db32932422eb07527f36ae40046e9a0'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='cf06c3e41acfaeda77112ac04f5a711cafe9fa9ac04dff758696fe7e8d66a0ea'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 8493bffa7..c325fc694 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='23e47ea7a3015be3240f21185fd902adebdcf76530757c9b482c7eb5bd3417c2'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='e00476a7be3c4adfa9b3d55d30768967fd246a8352e518894e183fa444d4d3ce'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='8077edc07a57d846c3d11286a7caf05ed6ca6d6c1234bf0e03611f18e187f075'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='f56068bb64c6bf858894f75c2bc261f54db32932422eb07527f36ae40046e9a0'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='cf06c3e41acfaeda77112ac04f5a711cafe9fa9ac04dff758696fe7e8d66a0ea'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index 4dd4ef1b1..e2ca28115 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='23e47ea7a3015be3240f21185fd902adebdcf76530757c9b482c7eb5bd3417c2'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='e00476a7be3c4adfa9b3d55d30768967fd246a8352e518894e183fa444d4d3ce'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='8077edc07a57d846c3d11286a7caf05ed6ca6d6c1234bf0e03611f18e187f075'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='f56068bb64c6bf858894f75c2bc261f54db32932422eb07527f36ae40046e9a0'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='cf06c3e41acfaeda77112ac04f5a711cafe9fa9ac04dff758696fe7e8d66a0ea'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index d65cbad5b..3a7470294 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='7290ace47a030d89ea023c28e7aa555c9da72b4194f73b39ec9d058011bf06dd'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='3b3fbd324620fd914bd8462e292124493fcf846fd69195c4b9a231131dc68d5f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='25abb7f74f55847b0d509402111084bd7a244d904744f3bfffa89528bc3b8a69'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='786a72296189ba8e43999532aa73730d87ec1fce558eb3c4e98b611b423375e3'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 7b72337ac..83bd577c7 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='786a72296189ba8e43999532aa73730d87ec1fce558eb3c4e98b611b423375e3'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='7290ace47a030d89ea023c28e7aa555c9da72b4194f73b39ec9d058011bf06dd'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='025f994549708f7291ce3b0fa7c41f7e78ec3af3eae3f85fffe9c5fa4a54889f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='3b3fbd324620fd914bd8462e292124493fcf846fd69195c4b9a231131dc68d5f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='25abb7f74f55847b0d509402111084bd7a244d904744f3bfffa89528bc3b8a69'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index c9d67d7cb..c5f49e892 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='786a72296189ba8e43999532aa73730d87ec1fce558eb3c4e98b611b423375e3'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='7290ace47a030d89ea023c28e7aa555c9da72b4194f73b39ec9d058011bf06dd'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='025f994549708f7291ce3b0fa7c41f7e78ec3af3eae3f85fffe9c5fa4a54889f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='3b3fbd324620fd914bd8462e292124493fcf846fd69195c4b9a231131dc68d5f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='25abb7f74f55847b0d509402111084bd7a244d904744f3bfffa89528bc3b8a69'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 13d835ce9..ff02ce6da 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='786a72296189ba8e43999532aa73730d87ec1fce558eb3c4e98b611b423375e3'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='7290ace47a030d89ea023c28e7aa555c9da72b4194f73b39ec9d058011bf06dd'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='025f994549708f7291ce3b0fa7c41f7e78ec3af3eae3f85fffe9c5fa4a54889f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_arm_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='3b3fbd324620fd914bd8462e292124493fcf846fd69195c4b9a231131dc68d5f'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.23_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='25abb7f74f55847b0d509402111084bd7a244d904744f3bfffa89528bc3b8a69'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_s390x_linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 9ad3e03bb..7ed8290d7 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='a900acf3ae56b000afc35468a083b6d6fd695abec87a8abdb02743d5c72f6d6d'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='44bdd662c3b832cfe0b808362866b8d7a700dd60e6e39716dee97211d35c230f'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='af3f33c14ed3e2fcd85a390575029fbf92a491f60cfdc274544ac8ad6532de47'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='aa7fb6bb342319d227a838af5c363bfa1b4a670c209372f9e6585bd79da6220c'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index c4f9c82bf..38a60497b 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -49,30 +49,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='aa7fb6bb342319d227a838af5c363bfa1b4a670c209372f9e6585bd79da6220c'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='a900acf3ae56b000afc35468a083b6d6fd695abec87a8abdb02743d5c72f6d6d'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='9b5c375ed7ce654083c6c1137d8daadebaf8657650576115f0deafab00d0f1d7'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='44bdd662c3b832cfe0b808362866b8d7a700dd60e6e39716dee97211d35c230f'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='af3f33c14ed3e2fcd85a390575029fbf92a491f60cfdc274544ac8ad6532de47'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index 18beaa010..a8e94fac1 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -49,30 +49,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='aa7fb6bb342319d227a838af5c363bfa1b4a670c209372f9e6585bd79da6220c'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='a900acf3ae56b000afc35468a083b6d6fd695abec87a8abdb02743d5c72f6d6d'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='9b5c375ed7ce654083c6c1137d8daadebaf8657650576115f0deafab00d0f1d7'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='44bdd662c3b832cfe0b808362866b8d7a700dd60e6e39716dee97211d35c230f'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='af3f33c14ed3e2fcd85a390575029fbf92a491f60cfdc274544ac8ad6532de47'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index 78a44ae5d..884d6a5c5 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -49,30 +49,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='aa7fb6bb342319d227a838af5c363bfa1b4a670c209372f9e6585bd79da6220c'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='a900acf3ae56b000afc35468a083b6d6fd695abec87a8abdb02743d5c72f6d6d'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='9b5c375ed7ce654083c6c1137d8daadebaf8657650576115f0deafab00d0f1d7'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='44bdd662c3b832cfe0b808362866b8d7a700dd60e6e39716dee97211d35c230f'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='af3f33c14ed3e2fcd85a390575029fbf92a491f60cfdc274544ac8ad6532de47'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 62651fe13..42fb41bb5 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='ccfa23c25790475c84df983cc5f729b94c04d9ea9863912deb15c6266782cf16'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='884b5cb817e50010b4d0a3252afb6a80db18995af19bbd16a37348b2c37949bc'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='67dd46352ba94f273579a04ef0756408b06db82b1b4ddf050045c226212f76fd'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 0d050c98b..0399f0c04 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='ccfa23c25790475c84df983cc5f729b94c04d9ea9863912deb15c6266782cf16'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='2e06401aa3aa7a825d73a6af8e9462449b1a86e7705b793dc8ec90423b602ee2'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='884b5cb817e50010b4d0a3252afb6a80db18995af19bbd16a37348b2c37949bc'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='67dd46352ba94f273579a04ef0756408b06db82b1b4ddf050045c226212f76fd'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 951147b38..7d03b73fc 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='ccfa23c25790475c84df983cc5f729b94c04d9ea9863912deb15c6266782cf16'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='2e06401aa3aa7a825d73a6af8e9462449b1a86e7705b793dc8ec90423b602ee2'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='884b5cb817e50010b4d0a3252afb6a80db18995af19bbd16a37348b2c37949bc'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='67dd46352ba94f273579a04ef0756408b06db82b1b4ddf050045c226212f76fd'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index 7ab52f62e..d543d0352 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='bcb1b7b8ad68c93093f09b591b7cb17161d39891f7d29d33a586f5a328603707'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='ccfa23c25790475c84df983cc5f729b94c04d9ea9863912deb15c6266782cf16'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - armhf) \ - ESUM='2e06401aa3aa7a825d73a6af8e9462449b1a86e7705b793dc8ec90423b602ee2'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_arm_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='884b5cb817e50010b4d0a3252afb6a80db18995af19bbd16a37348b2c37949bc'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.11_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='67dd46352ba94f273579a04ef0756408b06db82b1b4ddf050045c226212f76fd'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_s390x_linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 601a8c69e..b18eada48 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='7d3ab0e8eba95bd682cfda8041c6cb6fa21e09d0d9131316fd7c96c78969de31'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='9a1079d7f0fc72951fdc9a0029e49a15f6ba114683aee626f882ee2c761f1d57'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='f57a078d417614e5d78c07c77a6d8a04701058cf692c8e2868d593582be92768'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='fffa52c22d797b715a962e6c8d11ec7d79b90dd819b5bc51d62137ea4b22a340'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index fb7d8197d..d3e553c34 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -49,26 +49,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='fffa52c22d797b715a962e6c8d11ec7d79b90dd819b5bc51d62137ea4b22a340'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='7d3ab0e8eba95bd682cfda8041c6cb6fa21e09d0d9131316fd7c96c78969de31'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='9a1079d7f0fc72951fdc9a0029e49a15f6ba114683aee626f882ee2c761f1d57'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='f57a078d417614e5d78c07c77a6d8a04701058cf692c8e2868d593582be92768'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index 93889d1dc..31ad45baf 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -49,26 +49,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='fffa52c22d797b715a962e6c8d11ec7d79b90dd819b5bc51d62137ea4b22a340'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='7d3ab0e8eba95bd682cfda8041c6cb6fa21e09d0d9131316fd7c96c78969de31'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='9a1079d7f0fc72951fdc9a0029e49a15f6ba114683aee626f882ee2c761f1d57'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='f57a078d417614e5d78c07c77a6d8a04701058cf692c8e2868d593582be92768'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index fe4969daf..9d36acb78 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -44,26 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='c7c31bc6f5ab4c4b6f4559e11c2fa9541ae6757ab8da6dd85c29163913bd9238'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='aa628c6accc9d075b7b0f2bff6487f8ca0b8f057af31842a85fc8b363e1e10f3'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='a60dbad08a1977269dec7782f90225107479bfc8d10d2894f437778ae2e2b737'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ x86_64) \ - ESUM='f1af100c4afca2035f446967323230150cfe5872b5a664d98c86963e5c066e0d'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index 1a456e5b8..bf83090c4 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -46,26 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='f1af100c4afca2035f446967323230150cfe5872b5a664d98c86963e5c066e0d'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='c7c31bc6f5ab4c4b6f4559e11c2fa9541ae6757ab8da6dd85c29163913bd9238'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='aa628c6accc9d075b7b0f2bff6487f8ca0b8f057af31842a85fc8b363e1e10f3'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='a60dbad08a1977269dec7782f90225107479bfc8d10d2894f437778ae2e2b737'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index 4dc111524..4d518480e 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -46,26 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='f1af100c4afca2035f446967323230150cfe5872b5a664d98c86963e5c066e0d'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - arm64) \ - ESUM='c7c31bc6f5ab4c4b6f4559e11c2fa9541ae6757ab8da6dd85c29163913bd9238'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='aa628c6accc9d075b7b0f2bff6487f8ca0b8f057af31842a85fc8b363e1e10f3'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.3_9.tar.gz'; \ - ;; \ - s390x) \ - ESUM='a60dbad08a1977269dec7782f90225107479bfc8d10d2894f437778ae2e2b737'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_s390x_linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index fe61c70aa..9bb4d64de 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='d8488fa1e4e8c1e318cef4c0fc3842a7f15a4cf52b27054663bb94471f54b3fa'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='4113606ba65044a3cbd7678e1c0d41881d24a2441c8ab8b658b4ac58da624de5'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ x86_64) \ - ESUM='e59c6bf801cc023a1ea78eceb5e6756277f1564cd0a421ea984efe6cb96cfcf8'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index f77d1c3cc..5a3f8f711 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -47,22 +47,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='e59c6bf801cc023a1ea78eceb5e6756277f1564cd0a421ea984efe6cb96cfcf8'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - arm64) \ - ESUM='d8488fa1e4e8c1e318cef4c0fc3842a7f15a4cf52b27054663bb94471f54b3fa'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='4113606ba65044a3cbd7678e1c0d41881d24a2441c8ab8b658b4ac58da624de5'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 648596051..a60c65e8d 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -47,22 +47,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='e59c6bf801cc023a1ea78eceb5e6756277f1564cd0a421ea984efe6cb96cfcf8'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - arm64) \ - ESUM='d8488fa1e4e8c1e318cef4c0fc3842a7f15a4cf52b27054663bb94471f54b3fa'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='4113606ba65044a3cbd7678e1c0d41881d24a2441c8ab8b658b4ac58da624de5'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index e4e554f72..438121ab5 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='8e5996a2bbae2da9797cff5a62cb2080965e08fd66de24673b29a8e481ec769e'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='7df4a10fab324181a6c9e8b1e2a45042b8d30490f0fdb937a536f6cd17c907ef'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ x86_64) \ - ESUM='154dbc7975cf765c59bdaa1e693d6c8b009635c9a182d6d6d9f0cfbec5317b4c'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index 28f2117e9..f5a382a52 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='154dbc7975cf765c59bdaa1e693d6c8b009635c9a182d6d6d9f0cfbec5317b4c'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - arm64) \ - ESUM='8e5996a2bbae2da9797cff5a62cb2080965e08fd66de24673b29a8e481ec769e'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='7df4a10fab324181a6c9e8b1e2a45042b8d30490f0fdb937a536f6cd17c907ef'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 191479a53..330bc98e6 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='154dbc7975cf765c59bdaa1e693d6c8b009635c9a182d6d6d9f0cfbec5317b4c'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - arm64) \ - ESUM='8e5996a2bbae2da9797cff5a62cb2080965e08fd66de24673b29a8e481ec769e'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.1_8.tar.gz'; \ - ;; \ - ppc64el) \ - ESUM='7df4a10fab324181a6c9e8b1e2a45042b8d30490f0fdb937a536f6cd17c907ef'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ From cece896baf661531b51e4ccf2da422623cd3adc9 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 18 Jul 2024 15:05:50 +0200 Subject: [PATCH 02/35] dockerfile: automated nightly updates (#591) --- 11/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jdk/ubuntu/focal/Dockerfile | 4 ++++ 11/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 11/jdk/ubuntu/noble/Dockerfile | 4 ++++ 11/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jre/ubuntu/focal/Dockerfile | 4 ++++ 11/jre/ubuntu/jammy/Dockerfile | 4 ++++ 11/jre/ubuntu/noble/Dockerfile | 4 ++++ 17/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jdk/ubuntu/focal/Dockerfile | 4 ++++ 17/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 17/jdk/ubuntu/noble/Dockerfile | 4 ++++ 17/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jre/ubuntu/focal/Dockerfile | 4 ++++ 17/jre/ubuntu/jammy/Dockerfile | 4 ++++ 17/jre/ubuntu/noble/Dockerfile | 4 ++++ 21/jdk/alpine/Dockerfile | 10 +++++----- 21/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 21/jdk/ubuntu/noble/Dockerfile | 4 ++++ 21/jre/alpine/Dockerfile | 10 +++++----- 21/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jre/ubuntu/jammy/Dockerfile | 4 ++++ 21/jre/ubuntu/noble/Dockerfile | 4 ++++ 22/jdk/alpine/Dockerfile | 10 +++++----- 22/jre/alpine/Dockerfile | 10 +++++----- 26 files changed, 108 insertions(+), 20 deletions(-) diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index 7e6fdf22a..93ef73560 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index b50b24aa3..b5fe55cab 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index c325fc694..2fed82b12 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index e2ca28115..adc23995a 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 3a7470294..2d16c1fd0 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 83bd577c7..61ad94d66 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index c5f49e892..bf07d8183 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index ff02ce6da..6c74ffef3 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + arm64) \ + ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 7ed8290d7..85573f71d 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index 38a60497b..d8cc9e464 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -58,6 +58,10 @@ RUN set -eux; \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index a8e94fac1..e59e13f5e 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -58,6 +58,10 @@ RUN set -eux; \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index 884d6a5c5..1e483ccf2 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -58,6 +58,10 @@ RUN set -eux; \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 42fb41bb5..2aba18bcf 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 0399f0c04..0c517e06d 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 7d03b73fc..180de889a 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index d543d0352..ced2e7705 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jdk/alpine/Dockerfile b/21/jdk/alpine/Dockerfile index 3f53b29a0..eb7fcaf5e 100644 --- a/21/jdk/alpine/Dockerfile +++ b/21/jdk/alpine/Dockerfile @@ -43,18 +43,18 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ aarch64) \ - ESUM='0f68a9122054149861f6ce9d1b1c176bbe30dd76b36b74c916ba897c12e9d970'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_aarch64_alpine-linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='849c6d5a62a1f3dc2a3d2d7be07ffda089d35b862f6160b2a288c0408c2d8be8'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_alpine-linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ x86_64) \ - ESUM='8e861638bf6b08c6d5837de6dc929930550928ec5fcc81b9fa7e8296afd0f9c0'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='8fa232fc9de5a861c1a6b0cbdc861d0b0a2bdbdd27da53d991802a460a7f0973'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index b18eada48..9f6252c6f 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index d3e553c34..568b84711 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -58,6 +58,10 @@ RUN set -eux; \ ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index 31ad45baf..b1f356cd8 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -58,6 +58,10 @@ RUN set -eux; \ ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/alpine/Dockerfile b/21/jre/alpine/Dockerfile index 8187e0f0a..92dccf3c0 100644 --- a/21/jre/alpine/Dockerfile +++ b/21/jre/alpine/Dockerfile @@ -40,18 +40,18 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ aarch64) \ - ESUM='54e8618da373258654fe788d509f087d3612de9e080eb6831601069dbc8a4b2b'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_aarch64_alpine-linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='f9410264235861deaf30f97bec80870cf3bc38b1d8e57d897d8bb1f706ae6705'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_alpine-linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ x86_64) \ - ESUM='b3e7170deab11a7089fe8e14f9f398424fd86db085f745dad212f6cfc4121df6'; \ - BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_alpine-linux_hotspot_21.0.3_9.tar.gz'; \ + ESUM='0dfd0ebab44d777f65bceaff7f79e8e0b9deb74a5eb166922483f1864bcf2052'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_alpine-linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index 9d36acb78..405a22358 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index bf83090c4..7b684c6df 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index 4d518480e..33825569c 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + arm64) \ + ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jdk/alpine/Dockerfile b/22/jdk/alpine/Dockerfile index 65676872d..2e2348732 100644 --- a/22/jdk/alpine/Dockerfile +++ b/22/jdk/alpine/Dockerfile @@ -43,18 +43,18 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ aarch64) \ - ESUM='86a7b47c9277f2fd063ec910616b3676d86553ab7d23aa3bd365e51a57be1dc5'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_aarch64_alpine-linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='8ac93a2d5a55aabbc0f7156c2f9032026e87c185689d628ef8a4184b6e9ab006'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_alpine-linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ x86_64) \ - ESUM='d226e44b3513942db855df9a8737d848f64069848970d4cfd35ee3c38f2525c1'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_alpine-linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='49f73414824b1a7c268a611225fa4d7ce5e25600201e0f1cd59f94d1040b5264'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_alpine-linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/22/jre/alpine/Dockerfile b/22/jre/alpine/Dockerfile index 4205b4487..7b0d7eaba 100644 --- a/22/jre/alpine/Dockerfile +++ b/22/jre/alpine/Dockerfile @@ -40,18 +40,18 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ aarch64) \ - ESUM='6cac56dde6793d887deea101cfff283dc5f285e1118c21cbd1c4cb69f1072e55'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_aarch64_alpine-linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='749e7372a7dba0de632592fe55a0e387d96922c84dcdc039e0efc1f7ecfcd70e'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_alpine-linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ x86_64) \ - ESUM='e7c26ad00e3ded356b8c4b20b184ccf5bd63ccdccabde8d4a892389f178f1d5b'; \ - BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_alpine-linux_hotspot_22.0.1_8.tar.gz'; \ + ESUM='459342f5210cfd185aeed05abdc052fcd61cf6ff066541919b786236d69c5737'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_alpine-linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ From 3836b3ce4a10c5e758f6b48cc9bb5042f25703e1 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 18 Jul 2024 18:02:21 +0200 Subject: [PATCH 03/35] Update Dockerfiles (#593) * dockerfile: automated nightly updates * dockerfile: automated nightly updates --- 11/jdk/windows/nanoserver-1809/Dockerfile | 4 ++-- 11/jdk/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 11/jdk/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 11/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 11/jre/windows/nanoserver-1809/Dockerfile | 4 ++-- 11/jre/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 11/jre/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 11/jre/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 22/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 22/jdk/ubuntu/noble/Dockerfile | 4 ++++ 22/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jre/ubuntu/jammy/Dockerfile | 4 ++++ 22/jre/ubuntu/noble/Dockerfile | 4 ++++ 14 files changed, 52 insertions(+), 28 deletions(-) diff --git a/11/jdk/windows/nanoserver-1809/Dockerfile b/11/jdk/windows/nanoserver-1809/Dockerfile index 38433e1b7..608383fb2 100644 --- a/11/jdk/windows/nanoserver-1809/Dockerfile +++ b/11/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:11.0.23_9-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:11.0.24_8-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile index dfb8ddc9c..dc1c16380 100644 --- a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:11.0.23_9-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:11.0.24_8-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/11/jdk/windows/windowsservercore-1809/Dockerfile b/11/jdk/windows/windowsservercore-1809/Dockerfile index b06dbe19f..dd1d76011 100644 --- a/11/jdk/windows/windowsservercore-1809/Dockerfile +++ b/11/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_windows_hotspot_11.0.23_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_windows_hotspot_11.0.23_9.msi ; \ - Write-Host ('Verifying sha256 (cacbe31a3921e52f4ff6d031d6f37d8a7c58f20a136fccf1754565f8aa403ed8) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cacbe31a3921e52f4ff6d031d6f37d8a7c58f20a136fccf1754565f8aa403ed8') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ; \ + Write-Host ('Verifying sha256 (c6d15bff637a78d2033cd42c592e47c09fe87e7d028ae7d1fbf591c547848917) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'c6d15bff637a78d2033cd42c592e47c09fe87e7d028ae7d1fbf591c547848917') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile index bc39df9fa..9fe8159ca 100644 --- a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_windows_hotspot_11.0.23_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_windows_hotspot_11.0.23_9.msi ; \ - Write-Host ('Verifying sha256 (cacbe31a3921e52f4ff6d031d6f37d8a7c58f20a136fccf1754565f8aa403ed8) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cacbe31a3921e52f4ff6d031d6f37d8a7c58f20a136fccf1754565f8aa403ed8') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ; \ + Write-Host ('Verifying sha256 (c6d15bff637a78d2033cd42c592e47c09fe87e7d028ae7d1fbf591c547848917) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'c6d15bff637a78d2033cd42c592e47c09fe87e7d028ae7d1fbf591c547848917') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/11/jre/windows/nanoserver-1809/Dockerfile b/11/jre/windows/nanoserver-1809/Dockerfile index ce538abb6..ebac5513d 100644 --- a/11/jre/windows/nanoserver-1809/Dockerfile +++ b/11/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:11.0.23_9-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:11.0.24_8-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/11/jre/windows/nanoserver-ltsc2022/Dockerfile b/11/jre/windows/nanoserver-ltsc2022/Dockerfile index 822288ba9..bcbfdc1e2 100644 --- a/11/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:11.0.23_9-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:11.0.24_8-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/11/jre/windows/windowsservercore-1809/Dockerfile b/11/jre/windows/windowsservercore-1809/Dockerfile index 8f6af68f1..b454244b2 100644 --- a/11/jre/windows/windowsservercore-1809/Dockerfile +++ b/11/jre/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_windows_hotspot_11.0.23_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_windows_hotspot_11.0.23_9.msi ; \ - Write-Host ('Verifying sha256 (6699a78e61c0d8208a6d43a3b4590fbabf77bb1c1b8b30d8140e62804fa286cb) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6699a78e61c0d8208a6d43a3b4590fbabf77bb1c1b8b30d8140e62804fa286cb') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ; \ + Write-Host ('Verifying sha256 (da8e0016ee777b9eb4536991ba5e1ca38be049db13239c2f3924f759730fe329) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'da8e0016ee777b9eb4536991ba5e1ca38be049db13239c2f3924f759730fe329') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile index 94cf9c584..9c5b59663 100644 --- a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_windows_hotspot_11.0.23_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_windows_hotspot_11.0.23_9.msi ; \ - Write-Host ('Verifying sha256 (6699a78e61c0d8208a6d43a3b4590fbabf77bb1c1b8b30d8140e62804fa286cb) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6699a78e61c0d8208a6d43a3b4590fbabf77bb1c1b8b30d8140e62804fa286cb') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ; \ + Write-Host ('Verifying sha256 (da8e0016ee777b9eb4536991ba5e1ca38be049db13239c2f3924f759730fe329) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'da8e0016ee777b9eb4536991ba5e1ca38be049db13239c2f3924f759730fe329') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index 9bb4d64de..d95330476 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ x86_64) \ ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index 5a3f8f711..0544c5a5f 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -56,6 +56,10 @@ RUN set -eux; \ ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + arm64) \ + ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index a60c65e8d..55cc435e6 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -56,6 +56,10 @@ RUN set -eux; \ ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + arm64) \ + ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index 438121ab5..375202cdc 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ x86_64) \ ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index f5a382a52..f90dda421 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + arm64) \ + ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 330bc98e6..7ef47efaa 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + arm64) \ + ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From 7098aea5427b3ed800c47786e5b4b77e43ef6dbe Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 18 Jul 2024 19:29:26 +0200 Subject: [PATCH 04/35] dockerfile: automated nightly updates (#594) --- 17/jdk/windows/nanoserver-1809/Dockerfile | 4 ++-- 17/jdk/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 17/jdk/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 17/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 17/jre/windows/nanoserver-1809/Dockerfile | 4 ++-- 17/jre/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 17/jre/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 17/jre/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 8 files changed, 28 insertions(+), 28 deletions(-) diff --git a/17/jdk/windows/nanoserver-1809/Dockerfile b/17/jdk/windows/nanoserver-1809/Dockerfile index 7c3b8006d..576ccdd76 100644 --- a/17/jdk/windows/nanoserver-1809/Dockerfile +++ b/17/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:17.0.11_9-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:17.0.12_7-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile index 3e671597a..0b2c7d4ec 100644 --- a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:17.0.11_9-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:17.0.12_7-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/17/jdk/windows/windowsservercore-1809/Dockerfile b/17/jdk/windows/windowsservercore-1809/Dockerfile index 7e24152c8..a760aafe8 100644 --- a/17/jdk/windows/windowsservercore-1809/Dockerfile +++ b/17/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_windows_hotspot_17.0.11_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_windows_hotspot_17.0.11_9.msi ; \ - Write-Host ('Verifying sha256 (99ad599eea572207026f2b85159ef4ec06c620cee88662ea108f0013697b0365) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '99ad599eea572207026f2b85159ef4ec06c620cee88662ea108f0013697b0365') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ; \ + Write-Host ('Verifying sha256 (1e6df6b445d9e995e86fd8225c658df1411d3abab86b540ce4d2063c8a889835) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '1e6df6b445d9e995e86fd8225c658df1411d3abab86b540ce4d2063c8a889835') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 8042b53ed..436d4fde9 100644 --- a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_windows_hotspot_17.0.11_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_windows_hotspot_17.0.11_9.msi ; \ - Write-Host ('Verifying sha256 (99ad599eea572207026f2b85159ef4ec06c620cee88662ea108f0013697b0365) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '99ad599eea572207026f2b85159ef4ec06c620cee88662ea108f0013697b0365') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ; \ + Write-Host ('Verifying sha256 (1e6df6b445d9e995e86fd8225c658df1411d3abab86b540ce4d2063c8a889835) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '1e6df6b445d9e995e86fd8225c658df1411d3abab86b540ce4d2063c8a889835') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/17/jre/windows/nanoserver-1809/Dockerfile b/17/jre/windows/nanoserver-1809/Dockerfile index 6d35baa70..f77a12c2e 100644 --- a/17/jre/windows/nanoserver-1809/Dockerfile +++ b/17/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:17.0.11_9-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:17.0.12_7-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/17/jre/windows/nanoserver-ltsc2022/Dockerfile b/17/jre/windows/nanoserver-ltsc2022/Dockerfile index fb38aabe3..6d0d7a569 100644 --- a/17/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:17.0.11_9-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:17.0.12_7-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/17/jre/windows/windowsservercore-1809/Dockerfile b/17/jre/windows/windowsservercore-1809/Dockerfile index e5fbe2041..0dea88744 100644 --- a/17/jre/windows/windowsservercore-1809/Dockerfile +++ b/17/jre/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_windows_hotspot_17.0.11_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_windows_hotspot_17.0.11_9.msi ; \ - Write-Host ('Verifying sha256 (1244a2fc43e502758f16bd49de01fa60e89a94247eee41fa449db8f90ed5e682) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '1244a2fc43e502758f16bd49de01fa60e89a94247eee41fa449db8f90ed5e682') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ; \ + Write-Host ('Verifying sha256 (62caaa23b88545099612ae77455fe2ac888ad3731ac0758f5cbedad406fd3c6c) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '62caaa23b88545099612ae77455fe2ac888ad3731ac0758f5cbedad406fd3c6c') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile index cff402527..16da9b031 100644 --- a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_windows_hotspot_17.0.11_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_windows_hotspot_17.0.11_9.msi ; \ - Write-Host ('Verifying sha256 (1244a2fc43e502758f16bd49de01fa60e89a94247eee41fa449db8f90ed5e682) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '1244a2fc43e502758f16bd49de01fa60e89a94247eee41fa449db8f90ed5e682') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ; \ + Write-Host ('Verifying sha256 (62caaa23b88545099612ae77455fe2ac888ad3731ac0758f5cbedad406fd3c6c) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '62caaa23b88545099612ae77455fe2ac888ad3731ac0758f5cbedad406fd3c6c') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ From 082911f63ab701456ef2632bbaa60cd240fdda6d Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 18 Jul 2024 23:31:17 +0200 Subject: [PATCH 05/35] Update Dockerfiles (#595) * dockerfile: automated nightly updates * dockerfile: automated nightly updates --- 11/jdk/alpine/Dockerfile | 6 +++--- 11/jre/alpine/Dockerfile | 6 +++--- 8/jdk/ubi/ubi9-minimal/Dockerfile | 14 +++----------- 8/jdk/ubuntu/focal/Dockerfile | 22 +++------------------- 8/jdk/ubuntu/jammy/Dockerfile | 22 +++------------------- 8/jdk/ubuntu/noble/Dockerfile | 22 +++------------------- 8/jre/ubi/ubi9-minimal/Dockerfile | 14 +++----------- 8/jre/ubuntu/focal/Dockerfile | 22 +++------------------- 8/jre/ubuntu/jammy/Dockerfile | 22 +++------------------- 8/jre/ubuntu/noble/Dockerfile | 22 +++------------------- 10 files changed, 30 insertions(+), 142 deletions(-) diff --git a/11/jdk/alpine/Dockerfile b/11/jdk/alpine/Dockerfile index 3859a46d5..bf4eb235d 100644 --- a/11/jdk/alpine/Dockerfile +++ b/11/jdk/alpine/Dockerfile @@ -40,14 +40,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='b45c467be52fe11ffd9bf69b3a035068134b305053874de4f3b3c5e5e1419659'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='ae988c72eeb2d78bb729a3387601ce0ea84305734ebdbe95d276f39952a8e019'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_alpine-linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/11/jre/alpine/Dockerfile b/11/jre/alpine/Dockerfile index ca1ecf863..99fa6f01e 100644 --- a/11/jre/alpine/Dockerfile +++ b/11/jre/alpine/Dockerfile @@ -40,14 +40,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-11.0.23+9 +ENV JAVA_VERSION jdk-11.0.24+8 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='6972a6251bc88d6fbb64a188557cf165f1c415ded550d2a280bbcbc4272caff1'; \ - BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.23%2B9/OpenJDK11U-jre_x64_alpine-linux_hotspot_11.0.23_9.tar.gz'; \ + ESUM='0ac795729cc11f47323a71713eac2a5b22d4615fd9b66c8766f964c03fb6e160'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_alpine-linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index 0e9a3e78f..1e875bf30 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='3504d748a93f23cac8c060bd33231bd51e90dcb620f38dadc6239b6cd2a5011c'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='6b7ed7996788075e182dd33349288346240fbce540e50fd77aecfc309a5ada19'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ x86_64) \ - ESUM='b9884a96f78543276a6399c3eb8c2fd8a80e6b432ea50e87d3d12d495d1d2808'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index f48185f2c..24bc6eb68 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='b9884a96f78543276a6399c3eb8c2fd8a80e6b432ea50e87d3d12d495d1d2808'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='3504d748a93f23cac8c060bd33231bd51e90dcb620f38dadc6239b6cd2a5011c'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='be4aff6fa7bf6515f16f93dcaf9fdc61853fe1ef0d25b08a1bb1cf6e3d047391'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='6b7ed7996788075e182dd33349288346240fbce540e50fd77aecfc309a5ada19'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 2b4802316..97091c1d6 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='b9884a96f78543276a6399c3eb8c2fd8a80e6b432ea50e87d3d12d495d1d2808'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='3504d748a93f23cac8c060bd33231bd51e90dcb620f38dadc6239b6cd2a5011c'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='be4aff6fa7bf6515f16f93dcaf9fdc61853fe1ef0d25b08a1bb1cf6e3d047391'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='6b7ed7996788075e182dd33349288346240fbce540e50fd77aecfc309a5ada19'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 13bf11d9b..9d9958e7e 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='b9884a96f78543276a6399c3eb8c2fd8a80e6b432ea50e87d3d12d495d1d2808'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='3504d748a93f23cac8c060bd33231bd51e90dcb620f38dadc6239b6cd2a5011c'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='be4aff6fa7bf6515f16f93dcaf9fdc61853fe1ef0d25b08a1bb1cf6e3d047391'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='6b7ed7996788075e182dd33349288346240fbce540e50fd77aecfc309a5ada19'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index 8208ef66e..80a19a0e2 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -44,22 +44,14 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ - aarch64) \ - ESUM='17550a6a4ddf71ac81ba8f276467bc58f036c123c0f1bafcafd69f70e3e49cf5'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - ppc64le) \ - ESUM='d3157230c01b320e47ad6df650e83b15f8f76294d0df9f1c03867d07fe2883c9'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ x86_64) \ - ESUM='a8d994332a2ff15d48bf04405c3b2f6bd331a928dd96639b15e62891f7172363'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 086434ffd..3f369aefd 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='a8d994332a2ff15d48bf04405c3b2f6bd331a928dd96639b15e62891f7172363'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='17550a6a4ddf71ac81ba8f276467bc58f036c123c0f1bafcafd69f70e3e49cf5'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='1a6b470ac83b241223447a1e6cb55c4a8f78af0146b9387e9842625041226654'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='d3157230c01b320e47ad6df650e83b15f8f76294d0df9f1c03867d07fe2883c9'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index bde0a5788..3d50fb4ac 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='a8d994332a2ff15d48bf04405c3b2f6bd331a928dd96639b15e62891f7172363'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='17550a6a4ddf71ac81ba8f276467bc58f036c123c0f1bafcafd69f70e3e49cf5'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='1a6b470ac83b241223447a1e6cb55c4a8f78af0146b9387e9842625041226654'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='d3157230c01b320e47ad6df650e83b15f8f76294d0df9f1c03867d07fe2883c9'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index 0770ed1b0..fb37e4bea 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -46,30 +46,14 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ case "${ARCH}" in \ amd64) \ - ESUM='a8d994332a2ff15d48bf04405c3b2f6bd331a928dd96639b15e62891f7172363'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - arm64) \ - ESUM='17550a6a4ddf71ac81ba8f276467bc58f036c123c0f1bafcafd69f70e3e49cf5'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_aarch64_linux_hotspot_8u412b08.tar.gz'; \ - ;; \ - armhf) \ - ESUM='1a6b470ac83b241223447a1e6cb55c4a8f78af0146b9387e9842625041226654'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_arm_linux_hotspot_8u412b08.tar.gz'; \ - # Fixes libatomic.so.1: cannot open shared object file - apt-get update; \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ - rm -rf /var/lib/apt/lists/*; \ - ;; \ - ppc64el) \ - ESUM='d3157230c01b320e47ad6df650e83b15f8f76294d0df9f1c03867d07fe2883c9'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_ppc64le_linux_hotspot_8u412b08.tar.gz'; \ + ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ From 0062d7960c45bb5a7f35f831ea43e0b4b894a5c7 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Fri, 19 Jul 2024 13:31:57 +0200 Subject: [PATCH 06/35] Update Dockerfiles (#596) * dockerfile: automated nightly updates * dockerfile: automated nightly updates --- 17/jdk/alpine/Dockerfile | 6 +++--- 17/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jdk/ubuntu/focal/Dockerfile | 4 ++++ 17/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 17/jdk/ubuntu/noble/Dockerfile | 4 ++++ 17/jre/alpine/Dockerfile | 6 +++--- 17/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jre/ubuntu/focal/Dockerfile | 4 ++++ 17/jre/ubuntu/jammy/Dockerfile | 4 ++++ 17/jre/ubuntu/noble/Dockerfile | 4 ++++ 8/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 8/jdk/ubuntu/focal/Dockerfile | 4 ++++ 8/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 8/jdk/ubuntu/noble/Dockerfile | 4 ++++ 8/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 8/jre/ubuntu/focal/Dockerfile | 4 ++++ 8/jre/ubuntu/jammy/Dockerfile | 4 ++++ 8/jre/ubuntu/noble/Dockerfile | 4 ++++ 18 files changed, 70 insertions(+), 6 deletions(-) diff --git a/17/jdk/alpine/Dockerfile b/17/jdk/alpine/Dockerfile index cbb3956e3..3a7300773 100644 --- a/17/jdk/alpine/Dockerfile +++ b/17/jdk/alpine/Dockerfile @@ -43,14 +43,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='839326b5b4b3e4ac2edc3b685c8ab550f9b6d267eddf966323c801cb21e3e018'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='6d274a292a717a6f8d00a3ed0695497405c5c634c27fec1692dd13784f6ff6fa'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_alpine-linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 85573f71d..04f44d322 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index d8cc9e464..d0c40ec9c 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index e59e13f5e..0b79c3ace 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index 1e483ccf2..a2d1f6d5e 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/alpine/Dockerfile b/17/jre/alpine/Dockerfile index da3e0e18d..e00c143f0 100644 --- a/17/jre/alpine/Dockerfile +++ b/17/jre/alpine/Dockerfile @@ -40,14 +40,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-17.0.11+9 +ENV JAVA_VERSION jdk-17.0.12+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='b5dffd0be08c464d9c3903e2947508c1a5c21804ea1cff5556991a2a47d617d8'; \ - BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.11%2B9/OpenJDK17U-jre_x64_alpine-linux_hotspot_17.0.11_9.tar.gz'; \ + ESUM='63bae276cc322532b451ae7473127c92a75db16cc95473577f133cd09349822a'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_alpine-linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 2aba18bcf..2c939c087 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 0c517e06d..5c23fce12 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 180de889a..6f8afc003 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index ced2e7705..4bcffa5f0 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index 1e875bf30..45025590a 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ x86_64) \ ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index 24bc6eb68..df4fb4fd0 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 97091c1d6..6139d66b2 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 9d9958e7e..fd028cd0c 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index 80a19a0e2..58ff959fd 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -49,6 +49,10 @@ ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ case "${ARCH}" in \ + aarch64) \ + ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ x86_64) \ ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 3f369aefd..932d6fe76 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 3d50fb4ac..7da0fbec4 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index fb37e4bea..95ea3d38d 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -55,6 +55,10 @@ RUN set -eux; \ ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + arm64) \ + ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From eff255a252158e70a521825cc7e77b3666dec736 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Fri, 19 Jul 2024 15:20:53 +0200 Subject: [PATCH 07/35] dockerfile: automated nightly updates (#598) --- 21/jdk/windows/nanoserver-1809/Dockerfile | 4 ++-- 21/jdk/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 21/jdk/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 21/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 21/jre/windows/nanoserver-1809/Dockerfile | 4 ++-- 21/jre/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 21/jre/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 21/jre/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 8 files changed, 28 insertions(+), 28 deletions(-) diff --git a/21/jdk/windows/nanoserver-1809/Dockerfile b/21/jdk/windows/nanoserver-1809/Dockerfile index 9f7166316..a986f77be 100644 --- a/21/jdk/windows/nanoserver-1809/Dockerfile +++ b/21/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:21.0.3_9-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:21.0.4_7-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile index f9e578a27..6f667bb48 100644 --- a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:21.0.3_9-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:21.0.4_7-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/21/jdk/windows/windowsservercore-1809/Dockerfile b/21/jdk/windows/windowsservercore-1809/Dockerfile index 75d4e6007..0570a1022 100644 --- a/21/jdk/windows/windowsservercore-1809/Dockerfile +++ b/21/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_windows_hotspot_21.0.3_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_windows_hotspot_21.0.3_9.msi ; \ - Write-Host ('Verifying sha256 (264db89e74213f3ea2d7b7379d1c2ac346797d03b4d88cbf4ce72c3ff96477a1) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '264db89e74213f3ea2d7b7379d1c2ac346797d03b4d88cbf4ce72c3ff96477a1') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ; \ + Write-Host ('Verifying sha256 (5eadbdeabdca1a7abf6416a6b35bf7afd86e7edade7b5d44059fbcecacaef372) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5eadbdeabdca1a7abf6416a6b35bf7afd86e7edade7b5d44059fbcecacaef372') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile index d5dd9cb97..31c272e9c 100644 --- a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_windows_hotspot_21.0.3_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_windows_hotspot_21.0.3_9.msi ; \ - Write-Host ('Verifying sha256 (264db89e74213f3ea2d7b7379d1c2ac346797d03b4d88cbf4ce72c3ff96477a1) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '264db89e74213f3ea2d7b7379d1c2ac346797d03b4d88cbf4ce72c3ff96477a1') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ; \ + Write-Host ('Verifying sha256 (5eadbdeabdca1a7abf6416a6b35bf7afd86e7edade7b5d44059fbcecacaef372) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '5eadbdeabdca1a7abf6416a6b35bf7afd86e7edade7b5d44059fbcecacaef372') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/21/jre/windows/nanoserver-1809/Dockerfile b/21/jre/windows/nanoserver-1809/Dockerfile index aea35fbb3..5f38cd56f 100644 --- a/21/jre/windows/nanoserver-1809/Dockerfile +++ b/21/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:21.0.3_9-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:21.0.4_7-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/21/jre/windows/nanoserver-ltsc2022/Dockerfile b/21/jre/windows/nanoserver-ltsc2022/Dockerfile index 6f4790cbd..86eb14dc0 100644 --- a/21/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:21.0.3_9-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:21.0.4_7-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/21/jre/windows/windowsservercore-1809/Dockerfile b/21/jre/windows/windowsservercore-1809/Dockerfile index e6a5a2b11..78a64ba8d 100644 --- a/21/jre/windows/windowsservercore-1809/Dockerfile +++ b/21/jre/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_windows_hotspot_21.0.3_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_windows_hotspot_21.0.3_9.msi ; \ - Write-Host ('Verifying sha256 (790bd6bd823618ce33e366294159282b92d3fcd41886e375fd4b876843e0d90f) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '790bd6bd823618ce33e366294159282b92d3fcd41886e375fd4b876843e0d90f') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ; \ + Write-Host ('Verifying sha256 (cf5b9440680994f1571eb1b83fe017eafbec9e6e8a9cd033b3c099e967c1a553) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cf5b9440680994f1571eb1b83fe017eafbec9e6e8a9cd033b3c099e967c1a553') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile index 5969ffa28..f72a68929 100644 --- a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.3+9 +ENV JAVA_VERSION jdk-21.0.4+7 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_windows_hotspot_21.0.3_9.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jre_x64_windows_hotspot_21.0.3_9.msi ; \ - Write-Host ('Verifying sha256 (790bd6bd823618ce33e366294159282b92d3fcd41886e375fd4b876843e0d90f) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '790bd6bd823618ce33e366294159282b92d3fcd41886e375fd4b876843e0d90f') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ; \ + Write-Host ('Verifying sha256 (cf5b9440680994f1571eb1b83fe017eafbec9e6e8a9cd033b3c099e967c1a553) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'cf5b9440680994f1571eb1b83fe017eafbec9e6e8a9cd033b3c099e967c1a553') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ From e6cf42adda7af8f41af4c77cde82052debd8a483 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Sat, 20 Jul 2024 00:20:08 +0200 Subject: [PATCH 08/35] Update Dockerfiles (#599) * dockerfile: automated nightly updates * dockerfile: automated nightly updates * dockerfile: automated nightly updates --- 11/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jdk/ubuntu/focal/Dockerfile | 4 ++++ 11/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 11/jdk/ubuntu/noble/Dockerfile | 4 ++++ 11/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jre/ubuntu/focal/Dockerfile | 4 ++++ 11/jre/ubuntu/jammy/Dockerfile | 4 ++++ 11/jre/ubuntu/noble/Dockerfile | 4 ++++ 22/jdk/windows/nanoserver-1809/Dockerfile | 4 ++-- 22/jdk/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 22/jdk/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 22/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 22/jre/windows/nanoserver-1809/Dockerfile | 4 ++-- 22/jre/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 22/jre/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 22/jre/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 8/jdk/windows/nanoserver-1809/Dockerfile | 4 ++-- 8/jdk/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 8/jdk/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 8/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 8/jre/windows/nanoserver-1809/Dockerfile | 4 ++-- 8/jre/windows/nanoserver-ltsc2022/Dockerfile | 4 ++-- 8/jre/windows/windowsservercore-1809/Dockerfile | 10 +++++----- 8/jre/windows/windowsservercore-ltsc2022/Dockerfile | 10 +++++----- 24 files changed, 88 insertions(+), 56 deletions(-) diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index 93ef73560..a1ce0d28f 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index b5fe55cab..cca09e3d6 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 2fed82b12..9e296be55 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index adc23995a..01c62482c 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 2d16c1fd0..2f9745a47 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 61ad94d66..8d73f08ae 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index bf07d8183..c4d98d180 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 6c74ffef3..7dc7f8945 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jdk/windows/nanoserver-1809/Dockerfile b/22/jdk/windows/nanoserver-1809/Dockerfile index 8eda7885c..f542b7462 100644 --- a/22/jdk/windows/nanoserver-1809/Dockerfile +++ b/22/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:22.0.1_8-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:22.0.2_9-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile index 5949132a5..177533443 100644 --- a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:22.0.1_8-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:22.0.2_9-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac --version && javac --version \ diff --git a/22/jdk/windows/windowsservercore-1809/Dockerfile b/22/jdk/windows/windowsservercore-1809/Dockerfile index 7e6b76bab..374710994 100644 --- a/22/jdk/windows/windowsservercore-1809/Dockerfile +++ b/22/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_windows_hotspot_22.0.1_8.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_windows_hotspot_22.0.1_8.msi ; \ - Write-Host ('Verifying sha256 (89387f079e372b70a57c6a2f778a4020144cb19ae44f49b066c83d9410938e2f) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '89387f079e372b70a57c6a2f778a4020144cb19ae44f49b066c83d9410938e2f') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ; \ + Write-Host ('Verifying sha256 (d961cb2e612223e94b0506c61e1360d11b8961eab822ff12fa9b8921c4627a25) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd961cb2e612223e94b0506c61e1360d11b8961eab822ff12fa9b8921c4627a25') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 8ec48e98c..6fd8c98e4 100644 --- a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_windows_hotspot_22.0.1_8.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jdk_x64_windows_hotspot_22.0.1_8.msi ; \ - Write-Host ('Verifying sha256 (89387f079e372b70a57c6a2f778a4020144cb19ae44f49b066c83d9410938e2f) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '89387f079e372b70a57c6a2f778a4020144cb19ae44f49b066c83d9410938e2f') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ; \ + Write-Host ('Verifying sha256 (d961cb2e612223e94b0506c61e1360d11b8961eab822ff12fa9b8921c4627a25) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd961cb2e612223e94b0506c61e1360d11b8961eab822ff12fa9b8921c4627a25') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/22/jre/windows/nanoserver-1809/Dockerfile b/22/jre/windows/nanoserver-1809/Dockerfile index b26451034..14df9cca7 100644 --- a/22/jre/windows/nanoserver-1809/Dockerfile +++ b/22/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:22.0.1_8-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:22.0.2_9-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/22/jre/windows/nanoserver-ltsc2022/Dockerfile b/22/jre/windows/nanoserver-ltsc2022/Dockerfile index 7df26e458..7a66c39f8 100644 --- a/22/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:22.0.1_8-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:22.0.2_9-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java --version && java --version \ diff --git a/22/jre/windows/windowsservercore-1809/Dockerfile b/22/jre/windows/windowsservercore-1809/Dockerfile index 1aebb3e64..98789cc8d 100644 --- a/22/jre/windows/windowsservercore-1809/Dockerfile +++ b/22/jre/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_windows_hotspot_22.0.1_8.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_windows_hotspot_22.0.1_8.msi ; \ - Write-Host ('Verifying sha256 (6d918aa3c1cbad4c70afe9563f057dcf39b3c2dff2ae01e44e1e89f237399d96) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6d918aa3c1cbad4c70afe9563f057dcf39b3c2dff2ae01e44e1e89f237399d96') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ; \ + Write-Host ('Verifying sha256 (976ca7a664831ac76cd956ce525e6c86ddcadb70c0bc29a3754c55c991955cb7) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '976ca7a664831ac76cd956ce525e6c86ddcadb70c0bc29a3754c55c991955cb7') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile index ce41fe547..a10ea0a8a 100644 --- a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.1+8 +ENV JAVA_VERSION jdk-22.0.2+9 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_windows_hotspot_22.0.1_8.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.1%2B8/OpenJDK22U-jre_x64_windows_hotspot_22.0.1_8.msi ; \ - Write-Host ('Verifying sha256 (6d918aa3c1cbad4c70afe9563f057dcf39b3c2dff2ae01e44e1e89f237399d96) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6d918aa3c1cbad4c70afe9563f057dcf39b3c2dff2ae01e44e1e89f237399d96') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ; \ + Write-Host ('Verifying sha256 (976ca7a664831ac76cd956ce525e6c86ddcadb70c0bc29a3754c55c991955cb7) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '976ca7a664831ac76cd956ce525e6c86ddcadb70c0bc29a3754c55c991955cb7') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/8/jdk/windows/nanoserver-1809/Dockerfile b/8/jdk/windows/nanoserver-1809/Dockerfile index 0cb6a5aba..17df0ca11 100644 --- a/8/jdk/windows/nanoserver-1809/Dockerfile +++ b/8/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:8u412-b08-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:8u422-b05-jdk-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac -version && javac -version \ diff --git a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile index 9c8da7ddf..3d5e2d955 100644 --- a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:8u412-b08-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:8u422-b05-jdk-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo javac -version && javac -version \ diff --git a/8/jdk/windows/windowsservercore-1809/Dockerfile b/8/jdk/windows/windowsservercore-1809/Dockerfile index 74387f143..ed16e1dfe 100644 --- a/8/jdk/windows/windowsservercore-1809/Dockerfile +++ b/8/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_windows_hotspot_8u412b08.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_windows_hotspot_8u412b08.msi ; \ - Write-Host ('Verifying sha256 (52bd4d7aeed31a6ea52cf7f8f271dbbfa28163636a46815c1ba81f12fd4971c8) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '52bd4d7aeed31a6ea52cf7f8f271dbbfa28163636a46815c1ba81f12fd4971c8') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ; \ + Write-Host ('Verifying sha256 (9944b308061827c8ad26bedd573eac334c12eaa72c8b7f5ee73a5795e7710204) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9944b308061827c8ad26bedd573eac334c12eaa72c8b7f5ee73a5795e7710204') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 74a7706eb..3bbe14634 100644 --- a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_windows_hotspot_8u412b08.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_windows_hotspot_8u412b08.msi ; \ - Write-Host ('Verifying sha256 (52bd4d7aeed31a6ea52cf7f8f271dbbfa28163636a46815c1ba81f12fd4971c8) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '52bd4d7aeed31a6ea52cf7f8f271dbbfa28163636a46815c1ba81f12fd4971c8') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ; \ + Write-Host ('Verifying sha256 (9944b308061827c8ad26bedd573eac334c12eaa72c8b7f5ee73a5795e7710204) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '9944b308061827c8ad26bedd573eac334c12eaa72c8b7f5ee73a5795e7710204') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/8/jre/windows/nanoserver-1809/Dockerfile b/8/jre/windows/nanoserver-1809/Dockerfile index cc13c7407..b1985196a 100644 --- a/8/jre/windows/nanoserver-1809/Dockerfile +++ b/8/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:8u412-b08-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:8u422-b05-jre-windowsservercore-1809 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java -version && java -version \ diff --git a/8/jre/windows/nanoserver-ltsc2022/Dockerfile b/8/jre/windows/nanoserver-ltsc2022/Dockerfile index b56b21013..9f4881ce0 100644 --- a/8/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." @@ -31,7 +31,7 @@ RUN echo Updating PATH: %JAVA_HOME%\bin;%PATH% \ && echo Complete. USER ContainerUser -COPY --from=eclipse-temurin:8u412-b08-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME +COPY --from=eclipse-temurin:8u422-b05-jre-windowsservercore-ltsc2022 $JAVA_HOME $JAVA_HOME RUN echo Verifying install ... \ && echo java -version && java -version \ diff --git a/8/jre/windows/windowsservercore-1809/Dockerfile b/8/jre/windows/windowsservercore-1809/Dockerfile index 59dd78e22..05ee81764 100644 --- a/8/jre/windows/windowsservercore-1809/Dockerfile +++ b/8/jre/windows/windowsservercore-1809/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_windows_hotspot_8u412b08.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_windows_hotspot_8u412b08.msi ; \ - Write-Host ('Verifying sha256 (d6ab48ee1a4f4fa7f2d64e2ecffd2548b7116f7857f1d6352520ed1bb5fbc8f7) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd6ab48ee1a4f4fa7f2d64e2ecffd2548b7116f7857f1d6352520ed1bb5fbc8f7') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ; \ + Write-Host ('Verifying sha256 (6a53b2e2e0eee6b238d79999e4de2fac70efc03922d48ea6d1007f50e7c11307) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6a53b2e2e0eee6b238d79999e4de2fac70efc03922d48ea6d1007f50e7c11307') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ diff --git a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile index 517574f1b..234c0310f 100644 --- a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,12 +22,12 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 -RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_windows_hotspot_8u412b08.msi ...'); \ - curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_windows_hotspot_8u412b08.msi ; \ - Write-Host ('Verifying sha256 (d6ab48ee1a4f4fa7f2d64e2ecffd2548b7116f7857f1d6352520ed1bb5fbc8f7) ...'); \ - if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne 'd6ab48ee1a4f4fa7f2d64e2ecffd2548b7116f7857f1d6352520ed1bb5fbc8f7') { \ +RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ...'); \ + curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ; \ + Write-Host ('Verifying sha256 (6a53b2e2e0eee6b238d79999e4de2fac70efc03922d48ea6d1007f50e7c11307) ...'); \ + if ((Get-FileHash openjdk.msi -Algorithm sha256).Hash -ne '6a53b2e2e0eee6b238d79999e4de2fac70efc03922d48ea6d1007f50e7c11307') { \ Write-Host 'FAILED!'; \ exit 1; \ }; \ From 782b824488edc0a72ba51424b91087afd4c949d3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jul 2024 13:16:00 +1200 Subject: [PATCH 09/35] build(deps): bump github/codeql-action from 3.25.12 to 3.25.13 (#600) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.12 to 3.25.13. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/4fa2a7953630fd2f3fb380f21be14ede0169dd4f...2d790406f505036ef40ecba973cc774a50395aac) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 860e74be3..d16a5373e 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@4fa2a7953630fd2f3fb380f21be14ede0169dd4f # v3.25.12 + uses: github/codeql-action/init@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@4fa2a7953630fd2f3fb380f21be14ede0169dd4f # v3.25.12 + uses: github/codeql-action/autobuild@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@4fa2a7953630fd2f3fb380f21be14ede0169dd4f # v3.25.12 + uses: github/codeql-action/analyze@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 7c224547d..92053794c 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@4fa2a7953630fd2f3fb380f21be14ede0169dd4f # v3.25.12 + uses: github/codeql-action/upload-sarif@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 with: sarif_file: results.sarif From 92e3d022fdb7c71e272db3fa0c4da8b21b3e1e19 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Mon, 22 Jul 2024 16:28:48 +0200 Subject: [PATCH 10/35] dockerfile: automated nightly updates (#601) --- 17/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jdk/ubuntu/focal/Dockerfile | 4 ++++ 17/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 17/jdk/ubuntu/noble/Dockerfile | 4 ++++ 17/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 17/jre/ubuntu/focal/Dockerfile | 4 ++++ 17/jre/ubuntu/jammy/Dockerfile | 4 ++++ 17/jre/ubuntu/noble/Dockerfile | 4 ++++ 21/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 21/jdk/ubuntu/noble/Dockerfile | 4 ++++ 21/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jre/ubuntu/jammy/Dockerfile | 4 ++++ 21/jre/ubuntu/noble/Dockerfile | 4 ++++ 14 files changed, 56 insertions(+) diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 04f44d322..7cc7598d0 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='e244947f4c9176bd559598874b6ecaafcabba19c7067271cebb78708c2e9d14f'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='9d4dd339bf7e6a9dcba8347661603b74c61ab2a5083ae67bf76da6285da8a778'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index d0c40ec9c..b56fd512a 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -66,6 +66,10 @@ RUN set -eux; \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='e244947f4c9176bd559598874b6ecaafcabba19c7067271cebb78708c2e9d14f'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index 0b79c3ace..f3680043e 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -66,6 +66,10 @@ RUN set -eux; \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='e244947f4c9176bd559598874b6ecaafcabba19c7067271cebb78708c2e9d14f'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index a2d1f6d5e..aa0a551e9 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -66,6 +66,10 @@ RUN set -eux; \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='e244947f4c9176bd559598874b6ecaafcabba19c7067271cebb78708c2e9d14f'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 2c939c087..9fe05cba6 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='cb1a3857d10e9353862761ce3c6b45573a736ea95cea44bc02dc3a703e57255a'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e8088d7a3a7496faba7ac8787db09dc0264c2bc6f568ea8024fd775a783e13c'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 5c23fce12..cf2665f81 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='cb1a3857d10e9353862761ce3c6b45573a736ea95cea44bc02dc3a703e57255a'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 6f8afc003..5585f4cbd 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='cb1a3857d10e9353862761ce3c6b45573a736ea95cea44bc02dc3a703e57255a'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index 4bcffa5f0..fd4af6172 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='cb1a3857d10e9353862761ce3c6b45573a736ea95cea44bc02dc3a703e57255a'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_s390x_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 9f6252c6f..024b8d868 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index 568b84711..77d0e22ba 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index b1f356cd8..296d1cd31 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='d768eecddd7a515711659e02caef8516b7b7177fa34880a56398fd9822593a79'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index 405a22358..ce1919e7f 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index 7b684c6df..797622735 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index 33825569c..737e5b396 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='58845ce4275f3ec74fba075597c8216bb201773da036c4703be8b7b7b457355d'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_aarch64_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From 6e6c1cc0d915b330e3c474a9bf21d92fc4e5f157 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Mon, 22 Jul 2024 16:52:20 +0200 Subject: [PATCH 11/35] dockerfile: automated nightly updates (#602) --- 21/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 21/jdk/ubuntu/noble/Dockerfile | 4 ++++ 21/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 21/jre/ubuntu/jammy/Dockerfile | 4 ++++ 21/jre/ubuntu/noble/Dockerfile | 4 ++++ 6 files changed, 24 insertions(+) diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 024b8d868..2d6cfb2ab 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='c900c8d64fab1e53274974fa4a4c736a5a3754485a5c56f4947281480773658a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='51fb4d03a4429c39d397d3a03a779077159317616550e4e71624c9843083e7b9'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index 77d0e22ba..e10c3ab6d 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -66,6 +66,10 @@ RUN set -eux; \ ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='c900c8d64fab1e53274974fa4a4c736a5a3754485a5c56f4947281480773658a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index 296d1cd31..b0ff0b199 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -66,6 +66,10 @@ RUN set -eux; \ ESUM='c208cd0fb90560644a90f928667d2f53bfe408c957a5e36206585ad874427761'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='c900c8d64fab1e53274974fa4a4c736a5a3754485a5c56f4947281480773658a'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index ce1919e7f..d3cfe952b 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='7fb5b09987cb41de5118fecb5a81771b3a38a245cff411b39af33dbfbca3e760'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ x86_64) \ ESUM='d3affbb011ca6c722948f6345d15eba09bded33f9947d4d67e09723e2518c12a'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_linux_hotspot_21.0.4_7.tar.gz'; \ diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index 797622735..a2cef09a1 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='7fb5b09987cb41de5118fecb5a81771b3a38a245cff411b39af33dbfbca3e760'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index 737e5b396..edbd1c4f5 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='46cf93653e2b553fb1c91760cfe2ff20999ba358d648d2df69e5948784768440'; \ BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_ppc64le_linux_hotspot_21.0.4_7.tar.gz'; \ ;; \ + s390x) \ + ESUM='7fb5b09987cb41de5118fecb5a81771b3a38a245cff411b39af33dbfbca3e760'; \ + BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_s390x_linux_hotspot_21.0.4_7.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From f7ce125dc28d8c0d065d94829e63094daa018ca3 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Mon, 22 Jul 2024 18:13:57 +0200 Subject: [PATCH 12/35] dockerfile: automated nightly updates (#604) --- 17/jdk/ubuntu/focal/Dockerfile | 4 ++++ 17/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 17/jdk/ubuntu/noble/Dockerfile | 4 ++++ 17/jre/ubuntu/focal/Dockerfile | 4 ++++ 17/jre/ubuntu/jammy/Dockerfile | 4 ++++ 17/jre/ubuntu/noble/Dockerfile | 4 ++++ 6 files changed, 24 insertions(+) diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index b56fd512a..9f34b7052 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='ce7873ebf40ed0eb1089941ead4d3af79a205b1264f3162860d26ae957572b74'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index f3680043e..da35fe594 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='ce7873ebf40ed0eb1089941ead4d3af79a205b1264f3162860d26ae957572b74'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index aa0a551e9..7c87f71e8 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -62,6 +62,10 @@ RUN set -eux; \ ESUM='8257de06bf37f0c8f19f8d542e2ab5a4e17db3ca5f29d041bd0b02ab265db021'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='ce7873ebf40ed0eb1089941ead4d3af79a205b1264f3162860d26ae957572b74'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='c97988e5a99b8ae0c47ba330b0883398c7433312db0051d8c5ff97911bae1605'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index cf2665f81..d67ab6daf 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='f093094abe0cb2bb5a255d8180810030321073520541f289926c4682eda76136'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 5585f4cbd..28a69e0b3 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='f093094abe0cb2bb5a255d8180810030321073520541f289926c4682eda76136'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index fd4af6172..fcf0b06d7 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='9dfe4c56463690ae67d22268980d8861eb46b907d7914f8f2e6fc7b25778c8ec'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_aarch64_linux_hotspot_17.0.12_7.tar.gz'; \ ;; \ + armhf) \ + ESUM='f093094abe0cb2bb5a255d8180810030321073520541f289926c4682eda76136'; \ + BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_arm_linux_hotspot_17.0.12_7.tar.gz'; \ + ;; \ ppc64el) \ ESUM='2759c48e1e56117871b04c851af18b92b6992cf67590f602949b96c3cff15c73'; \ BINARY_URL='https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_ppc64le_linux_hotspot_17.0.12_7.tar.gz'; \ From 076919bf312c54e8abfa15520b825ae91b2e4160 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Mon, 22 Jul 2024 20:59:55 +0200 Subject: [PATCH 13/35] dockerfile: automated nightly updates (#605) --- 22/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 22/jdk/ubuntu/noble/Dockerfile | 4 ++++ 22/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jre/ubuntu/jammy/Dockerfile | 4 ++++ 22/jre/ubuntu/noble/Dockerfile | 4 ++++ 8/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 8/jdk/ubuntu/focal/Dockerfile | 4 ++++ 8/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 8/jdk/ubuntu/noble/Dockerfile | 4 ++++ 8/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 8/jre/ubuntu/focal/Dockerfile | 4 ++++ 8/jre/ubuntu/jammy/Dockerfile | 4 ++++ 8/jre/ubuntu/noble/Dockerfile | 4 ++++ 14 files changed, 56 insertions(+) diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index d95330476..6bbf4148f 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ x86_64) \ ESUM='05cd9359dacb1a1730f7c54f57e0fed47942a5292eb56a3a0ee6b13b87457a43'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index 0544c5a5f..aa1063bbc 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -60,6 +60,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 55cc435e6..5748ecedf 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -60,6 +60,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index 375202cdc..700785b2d 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ x86_64) \ ESUM='41e401f287e1850631b259b483929462217ac6b1cc3c7359d80b1cc01ee5a666'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index f90dda421..0cbd4896b 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 7ef47efaa..4d97ec28a 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + s390x) \ + ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index 45025590a..030e63d15 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ x86_64) \ ESUM='4c6056f6167fae73ace7c3080b78940be5c87d54f5b08894b3517eed1cbb2c06'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index df4fb4fd0..11429dfc6 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 6139d66b2..1bb3689f5 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index fd028cd0c..550377a2c 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index 58ff959fd..582f238ef 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ x86_64) \ ESUM='0ac516cc1eadffb4cd3cfc9736a33d58ea6a396bf85729036c973482f7c063d9'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 932d6fe76..8cf42fc99 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 7da0fbec4..8b2da54ef 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index 95ea3d38d..33ee16ee1 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From 5cb5c8b27962dabfcb82072685f7a8bebf8c97d2 Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Tue, 23 Jul 2024 11:45:11 +0200 Subject: [PATCH 14/35] dockerfile: automated nightly updates (#607) --- 11/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jdk/ubuntu/focal/Dockerfile | 4 ++++ 11/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 11/jdk/ubuntu/noble/Dockerfile | 4 ++++ 11/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 11/jre/ubuntu/focal/Dockerfile | 4 ++++ 11/jre/ubuntu/jammy/Dockerfile | 4 ++++ 11/jre/ubuntu/noble/Dockerfile | 4 ++++ 8 files changed, 32 insertions(+) diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index a1ce0d28f..783c1c3bf 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='7f049af5d3ff8794d07da1c31752e18e204653930f1d422e2d42905c90c1c408'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='0e71a01563a5c7b9988a168b0c4ce720a6dff966b3c27bb29d1ded461ff71d0e'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index cca09e3d6..6c4b0d4d3 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='7f049af5d3ff8794d07da1c31752e18e204653930f1d422e2d42905c90c1c408'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 9e296be55..03765e5b7 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='7f049af5d3ff8794d07da1c31752e18e204653930f1d422e2d42905c90c1c408'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index 01c62482c..e1c1373fa 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='7f049af5d3ff8794d07da1c31752e18e204653930f1d422e2d42905c90c1c408'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 2f9745a47..492b564f0 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='5b331f093bb03126334bbbc24f05f60681baeda461d860e4e2cdb693ee54e0ed'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ x86_64) \ ESUM='e0c1938093da3780e4494d366a4e6b75584dde8d46a19acea6691ae11df4cda5'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 8d73f08ae..9a0154e18 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='5b331f093bb03126334bbbc24f05f60681baeda461d860e4e2cdb693ee54e0ed'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index c4d98d180..14cf5cb77 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='5b331f093bb03126334bbbc24f05f60681baeda461d860e4e2cdb693ee54e0ed'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 7dc7f8945..2b1e6c2ac 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -63,6 +63,10 @@ RUN set -eux; \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + s390x) \ + ESUM='5b331f093bb03126334bbbc24f05f60681baeda461d860e4e2cdb693ee54e0ed'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_s390x_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ exit 1; \ From 90eb8dd5dbdf52ac6905b2bb39543254a819050e Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Tue, 23 Jul 2024 18:53:15 +0200 Subject: [PATCH 15/35] dockerfile: automated nightly updates (#608) --- 11/jdk/ubuntu/focal/Dockerfile | 4 ++++ 11/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 11/jdk/ubuntu/noble/Dockerfile | 4 ++++ 11/jre/ubuntu/focal/Dockerfile | 4 ++++ 11/jre/ubuntu/jammy/Dockerfile | 4 ++++ 11/jre/ubuntu/noble/Dockerfile | 4 ++++ 8/jdk/alpine/Dockerfile | 6 +++--- 8/jre/alpine/Dockerfile | 6 +++--- 8 files changed, 30 insertions(+), 6 deletions(-) diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index 6c4b0d4d3..0fd6632a2 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='9d14a076d1440161ab4c9736644e8e9f4719eb8e9f44c03470640960c3cd5e00'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 03765e5b7..2ce1d1eed 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='9d14a076d1440161ab4c9736644e8e9f4719eb8e9f44c03470640960c3cd5e00'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index e1c1373fa..5aed1a755 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='04e21301fedc76841fb03929ac6cacfbbda30b5693acfd515a8f34d4a0cdeb28'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='9d14a076d1440161ab4c9736644e8e9f4719eb8e9f44c03470640960c3cd5e00'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='4dfdc498938a159c592a2f094576f09c94999e17327c1f5ff81794694992054d'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 9a0154e18..ff3320647 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='bf893085627c6ec484e63aa1290276b23bcfee547459da6b0432ae9c5c1be22a'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index 14cf5cb77..e92cc0dfa 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='bf893085627c6ec484e63aa1290276b23bcfee547459da6b0432ae9c5c1be22a'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 2b1e6c2ac..d8136559c 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,10 @@ RUN set -eux; \ ESUM='1fe97cdaad47d7d108f329c6e4560b46748ef7f2948a1027812ade0bbc2a3597'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_aarch64_linux_hotspot_11.0.24_8.tar.gz'; \ ;; \ + armhf) \ + ESUM='bf893085627c6ec484e63aa1290276b23bcfee547459da6b0432ae9c5c1be22a'; \ + BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_arm_linux_hotspot_11.0.24_8.tar.gz'; \ + ;; \ ppc64el) \ ESUM='8ee351314182df93fbad96139bb74b97814944d66197896e388404a1ecfa06b3'; \ BINARY_URL='https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_ppc64le_linux_hotspot_11.0.24_8.tar.gz'; \ diff --git a/8/jdk/alpine/Dockerfile b/8/jdk/alpine/Dockerfile index 68b598d02..3b1554259 100644 --- a/8/jdk/alpine/Dockerfile +++ b/8/jdk/alpine/Dockerfile @@ -40,14 +40,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='409091665e5f8cf678938bbbc0d377122ef8bad7b1c97a0f809da054db956e51'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u412b08.tar.gz'; \ + ESUM='525a7731331cad502b9293ccb4ac2b13e85516736e98a57cb27c2767005188e1'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_alpine-linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ diff --git a/8/jre/alpine/Dockerfile b/8/jre/alpine/Dockerfile index e97444b3a..5ef18634f 100644 --- a/8/jre/alpine/Dockerfile +++ b/8/jre/alpine/Dockerfile @@ -40,14 +40,14 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk8u412-b08 +ENV JAVA_VERSION jdk8u422-b05 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ case "${ARCH}" in \ x86_64) \ - ESUM='c82962d7378d1fd415db594fce6ec047939e9fab5301fa4407cd7faea9ea7e31'; \ - BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u412-b08/OpenJDK8U-jre_x64_alpine-linux_hotspot_8u412b08.tar.gz'; \ + ESUM='9a7a939638b9cdaa8e1a119b8f21bfdd4cb2390b8a47cc27ccf9effc90f4b437'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_alpine-linux_hotspot_8u422b05.tar.gz'; \ ;; \ *) \ echo "Unsupported arch: ${ARCH}"; \ From 48ce959533cd2146eb94d626938b683b5b013cfc Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Tue, 23 Jul 2024 19:08:23 +0200 Subject: [PATCH 16/35] dockerfile: automated nightly updates (#609) --- 22/jdk/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jdk/ubuntu/jammy/Dockerfile | 4 ++++ 22/jdk/ubuntu/noble/Dockerfile | 4 ++++ 22/jre/ubi/ubi9-minimal/Dockerfile | 4 ++++ 22/jre/ubuntu/jammy/Dockerfile | 4 ++++ 22/jre/ubuntu/noble/Dockerfile | 4 ++++ 6 files changed, 24 insertions(+) diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index 6bbf4148f..c7e956427 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='1d678752d58e33ff951e75736b8415d6d7ae136b2421ca02e993f2603e9b259b'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index aa1063bbc..01f834888 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -60,6 +60,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='1d678752d58e33ff951e75736b8415d6d7ae136b2421ca02e993f2603e9b259b'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 5748ecedf..9d76c1fe3 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -60,6 +60,10 @@ RUN set -eux; \ ESUM='dac62747b5158c4bf4c4636432e3bdb9dea47f80f0c9d1d007f19bd5483b7d29'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='1d678752d58e33ff951e75736b8415d6d7ae136b2421ca02e993f2603e9b259b'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='46527cfc560552f05c0462520d69d438f144a3dc8206687952387c910cdd4c40'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index 700785b2d..3f8715bf1 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -53,6 +53,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64le) \ + ESUM='132191d6f23ad1ac558de67e3e9913d047db07efd979eb84bf5dc20a651ffe61'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index 0cbd4896b..96a2dba5f 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='132191d6f23ad1ac558de67e3e9913d047db07efd979eb84bf5dc20a651ffe61'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 4d97ec28a..87cf93ff0 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -57,6 +57,10 @@ RUN set -eux; \ ESUM='7cf494b51625505d1843ad032677d885bd8000a80d0d38396685f25acbdb5708'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_aarch64_linux_hotspot_22.0.2_9.tar.gz'; \ ;; \ + ppc64el) \ + ESUM='132191d6f23ad1ac558de67e3e9913d047db07efd979eb84bf5dc20a651ffe61'; \ + BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_ppc64le_linux_hotspot_22.0.2_9.tar.gz'; \ + ;; \ s390x) \ ESUM='4d9bc998c29fffcbbf752e9d0bf32391928a9e7a46edb1c5706e0f55b34a0c56'; \ BINARY_URL='https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_s390x_linux_hotspot_22.0.2_9.tar.gz'; \ From bbda8ccd2cb51b5c46028a40a4072e8158e2403a Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Wed, 24 Jul 2024 14:57:11 +0200 Subject: [PATCH 17/35] dockerfile: automated nightly updates (#611) --- 8/jdk/ubuntu/focal/Dockerfile | 8 ++++++++ 8/jdk/ubuntu/jammy/Dockerfile | 8 ++++++++ 8/jdk/ubuntu/noble/Dockerfile | 8 ++++++++ 8/jre/ubuntu/focal/Dockerfile | 8 ++++++++ 8/jre/ubuntu/jammy/Dockerfile | 8 ++++++++ 8/jre/ubuntu/noble/Dockerfile | 8 ++++++++ 6 files changed, 48 insertions(+) diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index 11429dfc6..b7a1193a6 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='5bd0203b2b09b033e3a762299a4975939d7571b433eab8b59340cc966102bef1'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 1bb3689f5..1e2b6a2fa 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='5bd0203b2b09b033e3a762299a4975939d7571b433eab8b59340cc966102bef1'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 550377a2c..09e12fff4 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='af98a839ec238106078bd360af9e405dc6665c05ee837178ed13b92193681923'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='5bd0203b2b09b033e3a762299a4975939d7571b433eab8b59340cc966102bef1'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='78fbd7b01204cdf90bcb3f9fe6a8e9432bdaa75776fa333aa9cbcb5a79de34cd'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 8cf42fc99..517ed3ffd 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='13bdefdeae6f18bc9c87bba18c853b8b12c5442ce07ff0a3956ce28776d695ff'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 8b2da54ef..11859a4eb 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='13bdefdeae6f18bc9c87bba18c853b8b12c5442ce07ff0a3956ce28776d695ff'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index 33ee16ee1..af08eb57c 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -59,6 +59,14 @@ RUN set -eux; \ ESUM='8fbefff2c578f73d95118d830347589ddc9aa84510200a5a5001901c2dea4810'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_aarch64_linux_hotspot_8u422b05.tar.gz'; \ ;; \ + armhf) \ + ESUM='13bdefdeae6f18bc9c87bba18c853b8b12c5442ce07ff0a3956ce28776d695ff'; \ + BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_arm_linux_hotspot_8u422b05.tar.gz'; \ + # Fixes libatomic.so.1: cannot open shared object file + apt-get update; \ + DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; \ + rm -rf /var/lib/apt/lists/*; \ + ;; \ ppc64el) \ ESUM='2991edbedee448c0f1edf131beca84b415dac64ea97365b9bfd85bc2f39893bb'; \ BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_ppc64le_linux_hotspot_8u422b05.tar.gz'; \ From 43fcefc483338727126a5263d7110f5711ad8506 Mon Sep 17 00:00:00 2001 From: Nikolai Prokoschenko Date: Thu, 25 Jul 2024 00:19:06 +0200 Subject: [PATCH 18/35] Address comments on the "rootless CA certs" patch (#572) Address the following problems with #538: 1. Correct the shell selection for entrypoint, Ubuntu flavours still need explicit `bash` for variables with dots in their names 2. Change unhelpful exported variable name (changed from `CACERT` to `JRE_CACERTS_PATH`) 3. Change `which` to more-POSIX-compatible `command -v` 4. More cleanup 5. Explicitely use `TMPDIR` when available instead of hard-coded `/tmp` 6. Support multi-certificate files (again) 7. Make output less verbose --- .../{dockerbuilder.crt => .dockerbuilder.crt} | 0 .../{dockerbuilder.key => .dockerbuilder.key} | 0 .../certs/.dockerbuilder2.crt | 20 +++++++ .../certs/.dockerbuilder2.key | 28 ++++++++++ .../certs/README.md | 10 +++- .../certs/multi-cert.crt | 40 ++++++++++++++ .../certs_symlink/.dockerbuilder2.crt | 20 +++++++ .../certs_symlink/.dockerbuilder2.key | 28 ++++++++++ .../certs_symlink/.multi-cert.crt | 40 ++++++++++++++ .../certs_symlink/README.md | 10 +++- .../certs_symlink/dockerbuilder.crt | 1 - .../certs_symlink/multi-cert.crt | 1 + .../tests/java-ca-certificates-update/run.sh | 2 +- 11/jdk/alpine/Dockerfile | 5 ++ 11/jdk/alpine/entrypoint.sh | 54 +++++++++++++------ 11/jdk/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 11/jdk/ubuntu/focal/Dockerfile | 2 +- 11/jdk/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 11/jdk/ubuntu/jammy/Dockerfile | 2 +- 11/jdk/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 11/jdk/ubuntu/noble/Dockerfile | 2 +- 11/jdk/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 11/jre/alpine/Dockerfile | 5 ++ 11/jre/alpine/entrypoint.sh | 54 +++++++++++++------ 11/jre/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 11/jre/ubuntu/focal/Dockerfile | 2 +- 11/jre/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 11/jre/ubuntu/jammy/Dockerfile | 2 +- 11/jre/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 11/jre/ubuntu/noble/Dockerfile | 2 +- 11/jre/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 17/jdk/alpine/Dockerfile | 5 ++ 17/jdk/alpine/entrypoint.sh | 54 +++++++++++++------ 17/jdk/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 17/jdk/ubuntu/focal/Dockerfile | 2 +- 17/jdk/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 17/jdk/ubuntu/jammy/Dockerfile | 2 +- 17/jdk/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 17/jdk/ubuntu/noble/Dockerfile | 2 +- 17/jdk/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 17/jre/alpine/Dockerfile | 5 ++ 17/jre/alpine/entrypoint.sh | 54 +++++++++++++------ 17/jre/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 17/jre/ubuntu/focal/Dockerfile | 2 +- 17/jre/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 17/jre/ubuntu/jammy/Dockerfile | 2 +- 17/jre/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 17/jre/ubuntu/noble/Dockerfile | 2 +- 17/jre/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 21/jdk/alpine/Dockerfile | 5 ++ 21/jdk/alpine/entrypoint.sh | 54 +++++++++++++------ 21/jdk/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 21/jdk/ubuntu/jammy/Dockerfile | 2 +- 21/jdk/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 21/jdk/ubuntu/noble/Dockerfile | 2 +- 21/jdk/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 21/jre/alpine/Dockerfile | 5 ++ 21/jre/alpine/entrypoint.sh | 54 +++++++++++++------ 21/jre/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 21/jre/ubuntu/jammy/Dockerfile | 2 +- 21/jre/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 21/jre/ubuntu/noble/Dockerfile | 2 +- 21/jre/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 22/jdk/alpine/Dockerfile | 5 ++ 22/jdk/alpine/entrypoint.sh | 54 +++++++++++++------ 22/jdk/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 22/jdk/ubuntu/jammy/Dockerfile | 2 +- 22/jdk/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 22/jdk/ubuntu/noble/Dockerfile | 2 +- 22/jdk/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 22/jre/alpine/Dockerfile | 5 ++ 22/jre/alpine/entrypoint.sh | 54 +++++++++++++------ 22/jre/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 22/jre/ubuntu/jammy/Dockerfile | 2 +- 22/jre/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 22/jre/ubuntu/noble/Dockerfile | 2 +- 22/jre/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 8/jdk/alpine/Dockerfile | 5 ++ 8/jdk/alpine/entrypoint.sh | 54 +++++++++++++------ 8/jdk/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 8/jdk/ubuntu/focal/Dockerfile | 2 +- 8/jdk/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 8/jdk/ubuntu/jammy/Dockerfile | 2 +- 8/jdk/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 8/jdk/ubuntu/noble/Dockerfile | 2 +- 8/jdk/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ 8/jre/alpine/Dockerfile | 5 ++ 8/jre/alpine/entrypoint.sh | 54 +++++++++++++------ 8/jre/ubi/ubi9-minimal/entrypoint.sh | 54 +++++++++++++------ 8/jre/ubuntu/focal/Dockerfile | 2 +- 8/jre/ubuntu/focal/entrypoint.sh | 54 +++++++++++++------ 8/jre/ubuntu/jammy/Dockerfile | 2 +- 8/jre/ubuntu/jammy/entrypoint.sh | 54 +++++++++++++------ 8/jre/ubuntu/noble/Dockerfile | 2 +- 8/jre/ubuntu/noble/entrypoint.sh | 54 +++++++++++++------ config/hotspot.yml | 9 ++++ docker_templates/alpine-linux.Dockerfile.j2 | 7 ++- docker_templates/entrypoint.sh | 54 +++++++++++++------ docker_templates/ubuntu.Dockerfile.j2 | 4 +- generate_dockerfiles.py | 2 + 100 files changed, 2030 insertions(+), 832 deletions(-) rename .test/tests/java-ca-certificates-update/certs/{dockerbuilder.crt => .dockerbuilder.crt} (100%) rename .test/tests/java-ca-certificates-update/certs/{dockerbuilder.key => .dockerbuilder.key} (100%) create mode 100644 .test/tests/java-ca-certificates-update/certs/.dockerbuilder2.crt create mode 100644 .test/tests/java-ca-certificates-update/certs/.dockerbuilder2.key create mode 100644 .test/tests/java-ca-certificates-update/certs/multi-cert.crt create mode 100644 .test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.crt create mode 100644 .test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.key create mode 100644 .test/tests/java-ca-certificates-update/certs_symlink/.multi-cert.crt delete mode 120000 .test/tests/java-ca-certificates-update/certs_symlink/dockerbuilder.crt create mode 120000 .test/tests/java-ca-certificates-update/certs_symlink/multi-cert.crt mode change 100755 => 100644 docker_templates/entrypoint.sh diff --git a/.test/tests/java-ca-certificates-update/certs/dockerbuilder.crt b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder.crt similarity index 100% rename from .test/tests/java-ca-certificates-update/certs/dockerbuilder.crt rename to .test/tests/java-ca-certificates-update/certs/.dockerbuilder.crt diff --git a/.test/tests/java-ca-certificates-update/certs/dockerbuilder.key b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder.key similarity index 100% rename from .test/tests/java-ca-certificates-update/certs/dockerbuilder.key rename to .test/tests/java-ca-certificates-update/certs/.dockerbuilder.key diff --git a/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.crt b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.crt new file mode 100644 index 000000000..45861b02a --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.crt @@ -0,0 +1,20 @@ +-----BEGIN CERTIFICATE----- +MIIDRzCCAi+gAwIBAgIUZuRSLr7riMCDUFHVQKYQh/abmZQwDQYJKoZIhvcNAQEL +BQAwMjEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFzAVBgNVBAMMDkRvY2tlckJ1 +aWxkZXIyMCAXDTI0MDcyNDIxMDk0NloYDzMwMDQwOTI1MjEwOTQ2WjAyMRcwFQYK +CZImiZPyLGQBGRYHVGVtdXJpbjEXMBUGA1UEAwwORG9ja2VyQnVpbGRlcjIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDSs004yyVW4dEREZgTGbN1Dzbc ++VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCnSlHIpU6Ax7tP +WGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP+N8d1taRSrhR +vbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV+JsmCf6oPDt4 +b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqpibaQbG1UTX1f +5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7kxAdOC/KTAgMB +AAGjUzBRMB0GA1UdDgQWBBQ1oKojBf5qgkezUk6axrz3CjdHmzAfBgNVHSMEGDAW +gBQ1oKojBf5qgkezUk6axrz3CjdHmzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 +DQEBCwUAA4IBAQCDUUOV23QzoqeGs7CKHXg+Mvxn6E4Tm395c0RKJRiHXEueQ2JD +e7ywfb11f/vGyudWVKe1wiRuMP4U8G6V3m6C/CSJrz1J3N9fvN23iPaZIh1O0vSr +xOz5UmiSsRW8BEQYCvF8CoWim1fG+KjtRhO6QqKLtK11j6TwZaUBIvSwK+OZKSuw +q8SuBRXNrIJvH0bonOXcuivOkruU0aRdizIG5Ed0OV2PVfbw2gu7Om83ADbVuSOV +noMwGjDVzVRAs8lu4ijuAryshVQK0LkImrwp+YkhRkFus0HWJqi/Ox+BHZt3BiFs +ATt9J3LCLazvP6LGr4rlZixJqM2ZC7dP0lOl +-----END CERTIFICATE----- diff --git a/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.key b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.key new file mode 100644 index 000000000..b4fce7f80 --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs/.dockerbuilder2.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDSs004yyVW4dER +EZgTGbN1Dzbc+VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCn +SlHIpU6Ax7tPWGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP ++N8d1taRSrhRvbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV ++JsmCf6oPDt4b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqp +ibaQbG1UTX1f5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7k +xAdOC/KTAgMBAAECggEAANIrB8nVtFbjVrmdnEqVs8drnITzVmYN+gxhaSTiQwuq +9dWyjY6+omPYVma94GKADlR7oXd+7cyLks65rrXRCdi0PaKw6vox9WdkMCY803zr +BWrouq0Hq1W0y3x3WOjrSyjOiTgdwhBDlLH1Vk/tV/VwybOa4dMeRKveFkNmbXKU +ZeR62r95vob4F5Ui6CWqSDRXFSml8VvBkU+6RAm697Lm5JQKoOuUueR9/L5z2Y0Z +rpGeBQ2tbbRIAvQWG3PhQirDqduL2e8aUs/RG8jGmbAnB9LoWJtaBEgLoza6221F +vboRWDLG5yZorXeGHT169+LQQ84rtwyjbQkvKjcP1QKBgQD632J17fWqK5cBaU2c +2bxAwS8aoqzPgBkAD2E8/VBEmJfjUAH5KVNuF9oeO/ho6JUOHoAWxMeu9v0ikynb +wnznQXlgieJCockJaTx1fkE/+W38uRXLK1TBSHFB7QdhPJbdeOh0jbsxNoX3wCAW +jQDUf2CoVdt+326II71IhDnnbQKBgQDXAbpkEWMYnWbl+WmSwGGud2AO7Uaw6ZQK +e83/zKQYcLsGHVMEJ41i2Lrd+VGJjK1eHUyOxHYg4Cel4cG5P7sU45yhehHVAeau +Z8KzQbB8BGcyMUoQFMIK5AXIiVdgTvt+aoKMEfXSAuZi1g5ATSS6zBoXWxlJyQ4b +R1MqOvMB/wKBgAw/3A7mD5i/iCAJhECkYQzIYgRq7QU0vAPEvHq94611xfTTc0U3 +P1ugzoWrZ/W3ZY/K7XYvJZDlfnaxuNmCJZclG0gbc3DNdYOAH/OctpLpGvW8E9RX +yUumveD6MeINk1A9FxyZzwoYH3J5bxeqyt+VWKLfjlgjkMIU/KkNy8YBAoGAbU2G +mTqxmyDh38YE4sMEpbIwVkZP6r5EMXQxDHrXbUlZ+sjLnFATM44kqZYG2pt2w2K3 +udisiRgLb+wuFOQOUpdH2Ft7V0NpJ36+X2zksJd4cu7VzQkQgILdYc5YajCc7+5r +wZOb2ZD52IMjqZLOOlxqYzc/yt/4WOvQnqZrRbcCgYBQopNwh9Hx9SBIHkkZkq1Z +iiPZl05khB/Vw76hABwjMillQd+nOJNf4kymIiOzfThEw/a4kam1zWvN0kq9Guu/ +YMvd73sqcudB5IWIjdqq0lKML2rcoBGqKGj5dFZt6Un/jqbi5nHeoMubrZkXUdG8 +PDtV2BTZDwmo+btPF//U5Q== +-----END PRIVATE KEY----- diff --git a/.test/tests/java-ca-certificates-update/certs/README.md b/.test/tests/java-ca-certificates-update/certs/README.md index b408dfed4..c5feb7d34 100644 --- a/.test/tests/java-ca-certificates-update/certs/README.md +++ b/.test/tests/java-ca-certificates-update/certs/README.md @@ -1 +1,9 @@ -This certificate/key pair has been generated with `openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder" -keyout certs/dockerbuilder.key -out certs/dockerbuilder.crt` and is only used for testing +These certificate/key pairs has been generated with + +``` shell +$ openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder" -keyout certs/dockerbuilder.key -out certs/dockerbuilder.crt +$ openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder2" -keyout certs/dockerbuilder2.key -out certs/dockerbuilder2.crt +$ cat certs/dockerbuilder.crt certs/dockerbuilder2.crt > certs/multi-cert.crt +``` + + and are only used for testing diff --git a/.test/tests/java-ca-certificates-update/certs/multi-cert.crt b/.test/tests/java-ca-certificates-update/certs/multi-cert.crt new file mode 100644 index 000000000..66293f662 --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs/multi-cert.crt @@ -0,0 +1,40 @@ +-----BEGIN CERTIFICATE----- +MIIDRTCCAi2gAwIBAgIUIfl8I/yasxlsTEc30PLLRuleiCswDQYJKoZIhvcNAQEL +BQAwMTEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFjAUBgNVBAMMDURvY2tlckJ1 +aWxkZXIwIBcNMjMwNjEyMTgyNDE1WhgPMzAwMzA4MTQxODI0MTVaMDExFzAVBgoJ +kiaJk/IsZAEZFgdUZW11cmluMRYwFAYDVQQDDA1Eb2NrZXJCdWlsZGVyMIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArfOgmluNXEIE7BWvt7jGgdZW/y5s +N78FcpZdM8Z2FatvjJKvNmJ9OkkkOSNBhGKAWpHn19JMNdQ2nEmTHMetg0hiSqRI +hBceAY4lDfOzxAyZGGpVzL9U1B9mOrX5O3EedF5AVvl0NZVjEwswuGaUa3zZBAKy +Z5Vv/z8Lw2uYIs/dtw8lcpEAb78BZ8bAhhhl+X+tTGK8agibLGQJT9l/JxS3pXyw +me4YaKQQRgvuqOTEt+x+0aA5E2EUTOGq0Li+i1ranf6ou5Dz/Y6LtXwT/j2bf4ZR +w2YHpYZL54UEtMWES2KAjsZ3u4DCxUIEfW8EgxUIhcepIDP1h05A3fSiWQIDAQAB +o1MwUTAdBgNVHQ4EFgQUr0VirSzDQTuNgGjDxRkxPFrjUKcwHwYDVR0jBBgwFoAU +r0VirSzDQTuNgGjDxRkxPFrjUKcwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B +AQsFAAOCAQEAlo6ZSAIKSUWqRygyNg9oWuLGfWMW//dZjU1MKBYVpM4Mry/aMD5d +kMQj9hm+zXhNYN01yLh/cdPKCQ/r1KP6lmCtZHp50Xe8HEnIymRYx0KMAcqYLjnT +DXwCPqtWvJ1do65vVJRN70CuF8T1JNFhPdirrAiuU7bhGPABfnbek7yNkTYgUSdb +WpV/WOFPh9Dl24vNl1/Cti+pQThlCgHF/+dVndFHN9FOOG8k8ohYkLwL+ZzKfOiZ +CVWn2mWk2EhcuTlg/3zkXmwjfzFTdXMhS1sdfJNReaY/omJ91euxB0c8iYZV4wuU +ghx+GJ14nO7RJNHNX4k+BBPxy3f56+cYrg== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIDRzCCAi+gAwIBAgIUZuRSLr7riMCDUFHVQKYQh/abmZQwDQYJKoZIhvcNAQEL +BQAwMjEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFzAVBgNVBAMMDkRvY2tlckJ1 +aWxkZXIyMCAXDTI0MDcyNDIxMDk0NloYDzMwMDQwOTI1MjEwOTQ2WjAyMRcwFQYK +CZImiZPyLGQBGRYHVGVtdXJpbjEXMBUGA1UEAwwORG9ja2VyQnVpbGRlcjIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDSs004yyVW4dEREZgTGbN1Dzbc ++VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCnSlHIpU6Ax7tP +WGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP+N8d1taRSrhR +vbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV+JsmCf6oPDt4 +b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqpibaQbG1UTX1f +5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7kxAdOC/KTAgMB +AAGjUzBRMB0GA1UdDgQWBBQ1oKojBf5qgkezUk6axrz3CjdHmzAfBgNVHSMEGDAW +gBQ1oKojBf5qgkezUk6axrz3CjdHmzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 +DQEBCwUAA4IBAQCDUUOV23QzoqeGs7CKHXg+Mvxn6E4Tm395c0RKJRiHXEueQ2JD +e7ywfb11f/vGyudWVKe1wiRuMP4U8G6V3m6C/CSJrz1J3N9fvN23iPaZIh1O0vSr +xOz5UmiSsRW8BEQYCvF8CoWim1fG+KjtRhO6QqKLtK11j6TwZaUBIvSwK+OZKSuw +q8SuBRXNrIJvH0bonOXcuivOkruU0aRdizIG5Ed0OV2PVfbw2gu7Om83ADbVuSOV +noMwGjDVzVRAs8lu4ijuAryshVQK0LkImrwp+YkhRkFus0HWJqi/Ox+BHZt3BiFs +ATt9J3LCLazvP6LGr4rlZixJqM2ZC7dP0lOl +-----END CERTIFICATE----- diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.crt b/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.crt new file mode 100644 index 000000000..45861b02a --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.crt @@ -0,0 +1,20 @@ +-----BEGIN CERTIFICATE----- +MIIDRzCCAi+gAwIBAgIUZuRSLr7riMCDUFHVQKYQh/abmZQwDQYJKoZIhvcNAQEL +BQAwMjEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFzAVBgNVBAMMDkRvY2tlckJ1 +aWxkZXIyMCAXDTI0MDcyNDIxMDk0NloYDzMwMDQwOTI1MjEwOTQ2WjAyMRcwFQYK +CZImiZPyLGQBGRYHVGVtdXJpbjEXMBUGA1UEAwwORG9ja2VyQnVpbGRlcjIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDSs004yyVW4dEREZgTGbN1Dzbc ++VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCnSlHIpU6Ax7tP +WGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP+N8d1taRSrhR +vbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV+JsmCf6oPDt4 +b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqpibaQbG1UTX1f +5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7kxAdOC/KTAgMB +AAGjUzBRMB0GA1UdDgQWBBQ1oKojBf5qgkezUk6axrz3CjdHmzAfBgNVHSMEGDAW +gBQ1oKojBf5qgkezUk6axrz3CjdHmzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 +DQEBCwUAA4IBAQCDUUOV23QzoqeGs7CKHXg+Mvxn6E4Tm395c0RKJRiHXEueQ2JD +e7ywfb11f/vGyudWVKe1wiRuMP4U8G6V3m6C/CSJrz1J3N9fvN23iPaZIh1O0vSr +xOz5UmiSsRW8BEQYCvF8CoWim1fG+KjtRhO6QqKLtK11j6TwZaUBIvSwK+OZKSuw +q8SuBRXNrIJvH0bonOXcuivOkruU0aRdizIG5Ed0OV2PVfbw2gu7Om83ADbVuSOV +noMwGjDVzVRAs8lu4ijuAryshVQK0LkImrwp+YkhRkFus0HWJqi/Ox+BHZt3BiFs +ATt9J3LCLazvP6LGr4rlZixJqM2ZC7dP0lOl +-----END CERTIFICATE----- diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.key b/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.key new file mode 100644 index 000000000..b4fce7f80 --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs_symlink/.dockerbuilder2.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDSs004yyVW4dER +EZgTGbN1Dzbc+VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCn +SlHIpU6Ax7tPWGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP ++N8d1taRSrhRvbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV ++JsmCf6oPDt4b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqp +ibaQbG1UTX1f5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7k +xAdOC/KTAgMBAAECggEAANIrB8nVtFbjVrmdnEqVs8drnITzVmYN+gxhaSTiQwuq +9dWyjY6+omPYVma94GKADlR7oXd+7cyLks65rrXRCdi0PaKw6vox9WdkMCY803zr +BWrouq0Hq1W0y3x3WOjrSyjOiTgdwhBDlLH1Vk/tV/VwybOa4dMeRKveFkNmbXKU +ZeR62r95vob4F5Ui6CWqSDRXFSml8VvBkU+6RAm697Lm5JQKoOuUueR9/L5z2Y0Z +rpGeBQ2tbbRIAvQWG3PhQirDqduL2e8aUs/RG8jGmbAnB9LoWJtaBEgLoza6221F +vboRWDLG5yZorXeGHT169+LQQ84rtwyjbQkvKjcP1QKBgQD632J17fWqK5cBaU2c +2bxAwS8aoqzPgBkAD2E8/VBEmJfjUAH5KVNuF9oeO/ho6JUOHoAWxMeu9v0ikynb +wnznQXlgieJCockJaTx1fkE/+W38uRXLK1TBSHFB7QdhPJbdeOh0jbsxNoX3wCAW +jQDUf2CoVdt+326II71IhDnnbQKBgQDXAbpkEWMYnWbl+WmSwGGud2AO7Uaw6ZQK +e83/zKQYcLsGHVMEJ41i2Lrd+VGJjK1eHUyOxHYg4Cel4cG5P7sU45yhehHVAeau +Z8KzQbB8BGcyMUoQFMIK5AXIiVdgTvt+aoKMEfXSAuZi1g5ATSS6zBoXWxlJyQ4b +R1MqOvMB/wKBgAw/3A7mD5i/iCAJhECkYQzIYgRq7QU0vAPEvHq94611xfTTc0U3 +P1ugzoWrZ/W3ZY/K7XYvJZDlfnaxuNmCJZclG0gbc3DNdYOAH/OctpLpGvW8E9RX +yUumveD6MeINk1A9FxyZzwoYH3J5bxeqyt+VWKLfjlgjkMIU/KkNy8YBAoGAbU2G +mTqxmyDh38YE4sMEpbIwVkZP6r5EMXQxDHrXbUlZ+sjLnFATM44kqZYG2pt2w2K3 +udisiRgLb+wuFOQOUpdH2Ft7V0NpJ36+X2zksJd4cu7VzQkQgILdYc5YajCc7+5r +wZOb2ZD52IMjqZLOOlxqYzc/yt/4WOvQnqZrRbcCgYBQopNwh9Hx9SBIHkkZkq1Z +iiPZl05khB/Vw76hABwjMillQd+nOJNf4kymIiOzfThEw/a4kam1zWvN0kq9Guu/ +YMvd73sqcudB5IWIjdqq0lKML2rcoBGqKGj5dFZt6Un/jqbi5nHeoMubrZkXUdG8 +PDtV2BTZDwmo+btPF//U5Q== +-----END PRIVATE KEY----- diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/.multi-cert.crt b/.test/tests/java-ca-certificates-update/certs_symlink/.multi-cert.crt new file mode 100644 index 000000000..66293f662 --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs_symlink/.multi-cert.crt @@ -0,0 +1,40 @@ +-----BEGIN CERTIFICATE----- +MIIDRTCCAi2gAwIBAgIUIfl8I/yasxlsTEc30PLLRuleiCswDQYJKoZIhvcNAQEL +BQAwMTEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFjAUBgNVBAMMDURvY2tlckJ1 +aWxkZXIwIBcNMjMwNjEyMTgyNDE1WhgPMzAwMzA4MTQxODI0MTVaMDExFzAVBgoJ +kiaJk/IsZAEZFgdUZW11cmluMRYwFAYDVQQDDA1Eb2NrZXJCdWlsZGVyMIIBIjAN +BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArfOgmluNXEIE7BWvt7jGgdZW/y5s +N78FcpZdM8Z2FatvjJKvNmJ9OkkkOSNBhGKAWpHn19JMNdQ2nEmTHMetg0hiSqRI +hBceAY4lDfOzxAyZGGpVzL9U1B9mOrX5O3EedF5AVvl0NZVjEwswuGaUa3zZBAKy +Z5Vv/z8Lw2uYIs/dtw8lcpEAb78BZ8bAhhhl+X+tTGK8agibLGQJT9l/JxS3pXyw +me4YaKQQRgvuqOTEt+x+0aA5E2EUTOGq0Li+i1ranf6ou5Dz/Y6LtXwT/j2bf4ZR +w2YHpYZL54UEtMWES2KAjsZ3u4DCxUIEfW8EgxUIhcepIDP1h05A3fSiWQIDAQAB +o1MwUTAdBgNVHQ4EFgQUr0VirSzDQTuNgGjDxRkxPFrjUKcwHwYDVR0jBBgwFoAU +r0VirSzDQTuNgGjDxRkxPFrjUKcwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B +AQsFAAOCAQEAlo6ZSAIKSUWqRygyNg9oWuLGfWMW//dZjU1MKBYVpM4Mry/aMD5d +kMQj9hm+zXhNYN01yLh/cdPKCQ/r1KP6lmCtZHp50Xe8HEnIymRYx0KMAcqYLjnT +DXwCPqtWvJ1do65vVJRN70CuF8T1JNFhPdirrAiuU7bhGPABfnbek7yNkTYgUSdb +WpV/WOFPh9Dl24vNl1/Cti+pQThlCgHF/+dVndFHN9FOOG8k8ohYkLwL+ZzKfOiZ +CVWn2mWk2EhcuTlg/3zkXmwjfzFTdXMhS1sdfJNReaY/omJ91euxB0c8iYZV4wuU +ghx+GJ14nO7RJNHNX4k+BBPxy3f56+cYrg== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIDRzCCAi+gAwIBAgIUZuRSLr7riMCDUFHVQKYQh/abmZQwDQYJKoZIhvcNAQEL +BQAwMjEXMBUGCgmSJomT8ixkARkWB1RlbXVyaW4xFzAVBgNVBAMMDkRvY2tlckJ1 +aWxkZXIyMCAXDTI0MDcyNDIxMDk0NloYDzMwMDQwOTI1MjEwOTQ2WjAyMRcwFQYK +CZImiZPyLGQBGRYHVGVtdXJpbjEXMBUGA1UEAwwORG9ja2VyQnVpbGRlcjIwggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDSs004yyVW4dEREZgTGbN1Dzbc ++VcRXUCfVCuiWFeT8a8oHZrbtNxCXD6whcGvLHsjszJKUCseDLCnSlHIpU6Ax7tP +WGsUhY6Zl8I+JzeB/8tYpyNRCLlm2Rp5Iv4oOX2btKYoUy+oFkWP+N8d1taRSrhR +vbPz+FwFSrtQwuT+grQP9yWO0qFrHL5Vjckg0BjELMYZ4rUx4KsV+JsmCf6oPDt4 +b+gnMoZebumKTJ53Ej/Kh0Z30s+UHR9WlbZ9KEyuBifgErw/USqpibaQbG1UTX1f +5LealeITduNWcXIAkQYHddCyt8YRtO9oVrxxVdFmCtU4qUHlov7kxAdOC/KTAgMB +AAGjUzBRMB0GA1UdDgQWBBQ1oKojBf5qgkezUk6axrz3CjdHmzAfBgNVHSMEGDAW +gBQ1oKojBf5qgkezUk6axrz3CjdHmzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 +DQEBCwUAA4IBAQCDUUOV23QzoqeGs7CKHXg+Mvxn6E4Tm395c0RKJRiHXEueQ2JD +e7ywfb11f/vGyudWVKe1wiRuMP4U8G6V3m6C/CSJrz1J3N9fvN23iPaZIh1O0vSr +xOz5UmiSsRW8BEQYCvF8CoWim1fG+KjtRhO6QqKLtK11j6TwZaUBIvSwK+OZKSuw +q8SuBRXNrIJvH0bonOXcuivOkruU0aRdizIG5Ed0OV2PVfbw2gu7Om83ADbVuSOV +noMwGjDVzVRAs8lu4ijuAryshVQK0LkImrwp+YkhRkFus0HWJqi/Ox+BHZt3BiFs +ATt9J3LCLazvP6LGr4rlZixJqM2ZC7dP0lOl +-----END CERTIFICATE----- diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/README.md b/.test/tests/java-ca-certificates-update/certs_symlink/README.md index b408dfed4..c5feb7d34 100644 --- a/.test/tests/java-ca-certificates-update/certs_symlink/README.md +++ b/.test/tests/java-ca-certificates-update/certs_symlink/README.md @@ -1 +1,9 @@ -This certificate/key pair has been generated with `openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder" -keyout certs/dockerbuilder.key -out certs/dockerbuilder.crt` and is only used for testing +These certificate/key pairs has been generated with + +``` shell +$ openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder" -keyout certs/dockerbuilder.key -out certs/dockerbuilder.crt +$ openssl req -nodes -new -x509 -days 358000 -subj "/DC=Temurin/CN=DockerBuilder2" -keyout certs/dockerbuilder2.key -out certs/dockerbuilder2.crt +$ cat certs/dockerbuilder.crt certs/dockerbuilder2.crt > certs/multi-cert.crt +``` + + and are only used for testing diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/dockerbuilder.crt b/.test/tests/java-ca-certificates-update/certs_symlink/dockerbuilder.crt deleted file mode 120000 index ac571385a..000000000 --- a/.test/tests/java-ca-certificates-update/certs_symlink/dockerbuilder.crt +++ /dev/null @@ -1 +0,0 @@ -.dockerbuilder.crt \ No newline at end of file diff --git a/.test/tests/java-ca-certificates-update/certs_symlink/multi-cert.crt b/.test/tests/java-ca-certificates-update/certs_symlink/multi-cert.crt new file mode 120000 index 000000000..c1e90006e --- /dev/null +++ b/.test/tests/java-ca-certificates-update/certs_symlink/multi-cert.crt @@ -0,0 +1 @@ +.multi-cert.crt \ No newline at end of file diff --git a/.test/tests/java-ca-certificates-update/run.sh b/.test/tests/java-ca-certificates-update/run.sh index 7c883fa19..ca7f72d87 100755 --- a/.test/tests/java-ca-certificates-update/run.sh +++ b/.test/tests/java-ca-certificates-update/run.sh @@ -10,7 +10,7 @@ CMD1=date # CMD2 in each run is to check for the `dockerbuilder` certificate in the Java keystore. Entrypoint export $CACERT to # point to the Java keystore. -CMD2=(sh -c "keytool -list -keystore \$CACERT -storepass changeit -alias dockerbuilder") +CMD2=(sh -c "keytool -list -keystore \"\$JRE_CACERTS_PATH\" -storepass changeit -alias dockerbuilder && keytool -list -keystore \"\$JRE_CACERTS_PATH\" -storepass changeit -alias dockerbuilder2") # For a custom entrypoint test, we need to create a new image. This image will get cleaned up at the end of the script # by the `finish` trap function. diff --git a/11/jdk/alpine/Dockerfile b/11/jdk/alpine/Dockerfile index bf4eb235d..8443793f8 100644 --- a/11/jdk/alpine/Dockerfile +++ b/11/jdk/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/11/jdk/alpine/entrypoint.sh b/11/jdk/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jdk/alpine/entrypoint.sh +++ b/11/jdk/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jdk/ubi/ubi9-minimal/entrypoint.sh b/11/jdk/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index 0fd6632a2..ced4de72f 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/focal/entrypoint.sh b/11/jdk/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jdk/ubuntu/focal/entrypoint.sh +++ b/11/jdk/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 2ce1d1eed..6f5d50ba8 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/jammy/entrypoint.sh b/11/jdk/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jdk/ubuntu/jammy/entrypoint.sh +++ b/11/jdk/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index 5aed1a755..6d9976623 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/noble/entrypoint.sh b/11/jdk/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jdk/ubuntu/noble/entrypoint.sh +++ b/11/jdk/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jre/alpine/Dockerfile b/11/jre/alpine/Dockerfile index 99fa6f01e..c02f16c04 100644 --- a/11/jre/alpine/Dockerfile +++ b/11/jre/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/11/jre/alpine/entrypoint.sh b/11/jre/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jre/alpine/entrypoint.sh +++ b/11/jre/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jre/ubi/ubi9-minimal/entrypoint.sh b/11/jre/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index ff3320647..bbf2da35c 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/focal/entrypoint.sh b/11/jre/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jre/ubuntu/focal/entrypoint.sh +++ b/11/jre/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index e92cc0dfa..e83a6b1cc 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/jammy/entrypoint.sh b/11/jre/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jre/ubuntu/jammy/entrypoint.sh +++ b/11/jre/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index d8136559c..823e6c30b 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/noble/entrypoint.sh b/11/jre/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/11/jre/ubuntu/noble/entrypoint.sh +++ b/11/jre/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jdk/alpine/Dockerfile b/17/jdk/alpine/Dockerfile index 3a7300773..f351d299d 100644 --- a/17/jdk/alpine/Dockerfile +++ b/17/jdk/alpine/Dockerfile @@ -40,6 +40,11 @@ RUN set -eux; \ # Error: java.io.IOException: Cannot run program "objcopy": error=2, No such file or directory binutils \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/17/jdk/alpine/entrypoint.sh b/17/jdk/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jdk/alpine/entrypoint.sh +++ b/17/jdk/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jdk/ubi/ubi9-minimal/entrypoint.sh b/17/jdk/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index 9f34b7052..669e7130a 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/focal/entrypoint.sh b/17/jdk/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jdk/ubuntu/focal/entrypoint.sh +++ b/17/jdk/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index da35fe594..9cdf27770 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/jammy/entrypoint.sh b/17/jdk/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jdk/ubuntu/jammy/entrypoint.sh +++ b/17/jdk/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index 7c87f71e8..ca0f958f3 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/noble/entrypoint.sh b/17/jdk/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jdk/ubuntu/noble/entrypoint.sh +++ b/17/jdk/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jre/alpine/Dockerfile b/17/jre/alpine/Dockerfile index e00c143f0..29fc49a93 100644 --- a/17/jre/alpine/Dockerfile +++ b/17/jre/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/17/jre/alpine/entrypoint.sh b/17/jre/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jre/alpine/entrypoint.sh +++ b/17/jre/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jre/ubi/ubi9-minimal/entrypoint.sh b/17/jre/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index d67ab6daf..40c4b1b2a 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/focal/entrypoint.sh b/17/jre/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jre/ubuntu/focal/entrypoint.sh +++ b/17/jre/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 28a69e0b3..0411cbcdd 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/jammy/entrypoint.sh b/17/jre/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jre/ubuntu/jammy/entrypoint.sh +++ b/17/jre/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index fcf0b06d7..7e32e9ba1 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/noble/entrypoint.sh b/17/jre/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/17/jre/ubuntu/noble/entrypoint.sh +++ b/17/jre/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jdk/alpine/Dockerfile b/21/jdk/alpine/Dockerfile index eb7fcaf5e..c9f27519d 100644 --- a/21/jdk/alpine/Dockerfile +++ b/21/jdk/alpine/Dockerfile @@ -40,6 +40,11 @@ RUN set -eux; \ # Error: java.io.IOException: Cannot run program "objcopy": error=2, No such file or directory binutils \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/21/jdk/alpine/entrypoint.sh b/21/jdk/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jdk/alpine/entrypoint.sh +++ b/21/jdk/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jdk/ubi/ubi9-minimal/entrypoint.sh b/21/jdk/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index e10c3ab6d..17732f4a6 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -99,6 +99,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/jammy/entrypoint.sh b/21/jdk/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jdk/ubuntu/jammy/entrypoint.sh +++ b/21/jdk/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index b0ff0b199..bc43e034a 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -99,6 +99,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/noble/entrypoint.sh b/21/jdk/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jdk/ubuntu/noble/entrypoint.sh +++ b/21/jdk/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jre/alpine/Dockerfile b/21/jre/alpine/Dockerfile index 92dccf3c0..4b59fbe16 100644 --- a/21/jre/alpine/Dockerfile +++ b/21/jre/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/21/jre/alpine/entrypoint.sh b/21/jre/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jre/alpine/entrypoint.sh +++ b/21/jre/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jre/ubi/ubi9-minimal/entrypoint.sh b/21/jre/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index a2cef09a1..c4e1bfff0 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -94,4 +94,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/jammy/entrypoint.sh b/21/jre/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jre/ubuntu/jammy/entrypoint.sh +++ b/21/jre/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index edbd1c4f5..bcdb398e6 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -94,4 +94,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/noble/entrypoint.sh b/21/jre/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/21/jre/ubuntu/noble/entrypoint.sh +++ b/21/jre/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jdk/alpine/Dockerfile b/22/jdk/alpine/Dockerfile index 2e2348732..79f1b57b2 100644 --- a/22/jdk/alpine/Dockerfile +++ b/22/jdk/alpine/Dockerfile @@ -40,6 +40,11 @@ RUN set -eux; \ # Error: java.io.IOException: Cannot run program "objcopy": error=2, No such file or directory binutils \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/22/jdk/alpine/entrypoint.sh b/22/jdk/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jdk/alpine/entrypoint.sh +++ b/22/jdk/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jdk/ubi/ubi9-minimal/entrypoint.sh b/22/jdk/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index 01f834888..0a68998ba 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -97,6 +97,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/jammy/entrypoint.sh b/22/jdk/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jdk/ubuntu/jammy/entrypoint.sh +++ b/22/jdk/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 9d76c1fe3..fa41d3d99 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -97,6 +97,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/noble/entrypoint.sh b/22/jdk/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jdk/ubuntu/noble/entrypoint.sh +++ b/22/jdk/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jre/alpine/Dockerfile b/22/jre/alpine/Dockerfile index 7b0d7eaba..01f77b4a4 100644 --- a/22/jre/alpine/Dockerfile +++ b/22/jre/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/22/jre/alpine/entrypoint.sh b/22/jre/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jre/alpine/entrypoint.sh +++ b/22/jre/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jre/ubi/ubi9-minimal/entrypoint.sh b/22/jre/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index 96a2dba5f..714892d7a 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -92,4 +92,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/jammy/entrypoint.sh b/22/jre/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jre/ubuntu/jammy/entrypoint.sh +++ b/22/jre/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 87cf93ff0..65571a1a1 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -92,4 +92,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/noble/entrypoint.sh b/22/jre/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/22/jre/ubuntu/noble/entrypoint.sh +++ b/22/jre/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jdk/alpine/Dockerfile b/8/jdk/alpine/Dockerfile index 3b1554259..2b79e9f3f 100644 --- a/8/jdk/alpine/Dockerfile +++ b/8/jdk/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/8/jdk/alpine/entrypoint.sh b/8/jdk/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jdk/alpine/entrypoint.sh +++ b/8/jdk/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jdk/ubi/ubi9-minimal/entrypoint.sh b/8/jdk/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index b7a1193a6..6a91f96f7 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/focal/entrypoint.sh b/8/jdk/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jdk/ubuntu/focal/entrypoint.sh +++ b/8/jdk/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 1e2b6a2fa..a81eeb80f 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/jammy/entrypoint.sh b/8/jdk/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jdk/ubuntu/jammy/entrypoint.sh +++ b/8/jdk/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 09e12fff4..e4aa7a51f 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/noble/entrypoint.sh b/8/jdk/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jdk/ubuntu/noble/entrypoint.sh +++ b/8/jdk/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jre/alpine/Dockerfile b/8/jre/alpine/Dockerfile index 5ef18634f..5e2245f9c 100644 --- a/8/jre/alpine/Dockerfile +++ b/8/jre/alpine/Dockerfile @@ -37,6 +37,11 @@ RUN set -eux; \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* diff --git a/8/jre/alpine/entrypoint.sh b/8/jre/alpine/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jre/alpine/entrypoint.sh +++ b/8/jre/alpine/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jre/ubi/ubi9-minimal/entrypoint.sh b/8/jre/ubi/ubi9-minimal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 517ed3ffd..d3a1d52b6 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/focal/entrypoint.sh b/8/jre/ubuntu/focal/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jre/ubuntu/focal/entrypoint.sh +++ b/8/jre/ubuntu/focal/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 11859a4eb..88c175088 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/jammy/entrypoint.sh b/8/jre/ubuntu/jammy/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jre/ubuntu/jammy/entrypoint.sh +++ b/8/jre/ubuntu/jammy/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index af08eb57c..982b49743 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/noble/entrypoint.sh b/8/jre/ubuntu/noble/entrypoint.sh index 0a5c75c36..dcc51cd2b 100755 --- a/8/jre/ubuntu/noble/entrypoint.sh +++ b/8/jre/ubuntu/noble/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/config/hotspot.yml b/config/hotspot.yml index cea1224fb..8b47bc518 100644 --- a/config/hotspot.yml +++ b/config/hotspot.yml @@ -21,18 +21,27 @@ configurations: - directory: ubuntu/noble image: ubuntu:24.04 architectures: [aarch64, arm, ppc64le, s390x, x64] + # `bash` is required for Ubuntu-based images to correctly resolve + # environment variables.with.dots.in.them. + shebang: /bin/bash os: ubuntu - directory: ubuntu/jammy image: ubuntu:22.04 architectures: [aarch64, arm, ppc64le, s390x, x64] deprecated: 23 + # `bash` is required for Ubuntu-based images to correctly resolve + # environment variables.with.dots.in.them. + shebang: /bin/bash os: ubuntu - directory: ubuntu/focal architectures: [aarch64, arm, ppc64le, s390x, x64] image: ubuntu:20.04 deprecated: 20 + # `bash` is required for Ubuntu-based images to correctly resolve + # environment variables.with.dots.in.them. + shebang: /bin/bash os: ubuntu - directory: ubi/ubi9-minimal diff --git a/docker_templates/alpine-linux.Dockerfile.j2 b/docker_templates/alpine-linux.Dockerfile.j2 index 4dc73069b..41d379279 100644 --- a/docker_templates/alpine-linux.Dockerfile.j2 +++ b/docker_templates/alpine-linux.Dockerfile.j2 @@ -17,6 +17,11 @@ RUN set -eux; \ musl-locales musl-locales-lang \ {% include 'partials/binutils.j2' -%} tzdata \ + # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can + # only import one at a time. + coreutils \ + # Needed to extract CN and generate aliases for certificates + openssl \ ; \ rm -rf /var/cache/apk/* @@ -27,4 +32,4 @@ ENV JAVA_VERSION {{ java_version }} {% include 'partials/version-check.j2' %} COPY entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] -{% include 'partials/jshell.j2' %} \ No newline at end of file +{% include 'partials/jshell.j2' %} diff --git a/docker_templates/entrypoint.sh b/docker_templates/entrypoint.sh old mode 100755 new mode 100644 index 0a5c75c36..dcc51cd2b --- a/docker_templates/entrypoint.sh +++ b/docker_templates/entrypoint.sh @@ -1,50 +1,70 @@ #!/usr/bin/env sh -# Converted to POSIX shell to avoid the need for bash in the image +# This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get +# started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but +# are supported by `sh` in some Linux flavours. set -e +TMPDIR=${TMPDIR:-/tmp} + # JDK truststore location -CACERT=$JAVA_HOME/lib/security/cacerts +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts # JDK8 puts its JRE in a subdirectory if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - CACERT=$JAVA_HOME/jre/lib/security/cacerts + JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts fi # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then - if [ ! -w /tmp ]; then - echo "Using additional CA certificates requires write permissions to /tmp. Cannot create truststore." + if [ ! -w "$TMPDIR" ]; then + echo "Using additional CA certificates requires write permissions to $TMPDIR. Cannot create truststore." exit 1 fi # Figure out whether we can write to the JVM truststore. If we can, we'll add the certificates there. If not, # we'll use a temporary truststore. - if [ ! -w "$CACERT" ]; then + if [ ! -w "$JRE_CACERTS_PATH" ]; then # We cannot write to the JVM truststore, so we create a temporary one - CACERT_NEW=$(mktemp) - echo "Using a temporary truststore at $CACERT_NEW" - cp $CACERT $CACERT_NEW - CACERT=$CACERT_NEW + JRE_CACERTS_PATH_NEW=$(mktemp) + echo "Using a temporary truststore at $JRE_CACERTS_PATH_NEW" + cp "$JRE_CACERTS_PATH" "$JRE_CACERTS_PATH_NEW" + JRE_CACERTS_PATH=$JRE_CACERTS_PATH_NEW # If we use a custom truststore, we need to make sure that the JVM uses it - export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${CACERT} -Djavax.net.ssl.trustStorePassword=changeit" + export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} -Djavax.net.ssl.trustStore=${JRE_CACERTS_PATH} -Djavax.net.ssl.trustStorePassword=changeit" fi tmp_store=$(mktemp) # Copy full system CA store to a temporary location - trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" + trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$tmp_store" > /dev/null # Add the system CA certificates to the JVM truststore. - keytool -importkeystore -destkeystore "$CACERT" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt # >/dev/null + keytool -importkeystore -destkeystore "$JRE_CACERTS_PATH" -srckeystore "$tmp_store" -srcstorepass changeit -deststorepass changeit -noprompt > /dev/null + + # Clean up the temporary truststore + rm -f "$tmp_store" # Import the additional certificate into JVM truststore for i in /certificates/*crt; do if [ ! -f "$i" ]; then continue fi - keytool -import -noprompt -alias "$(basename "$i" .crt)" -file "$i" -keystore "$CACERT" -storepass changeit # >/dev/null + tmp_dir=$(mktemp -d) + BASENAME=$(basename "$i" .crt) + + # We might have multiple certificates in the file. Split this file into single files. The reason is that + # `keytool` does not accept multi-certificate files + csplit -s -z -b %02d.crt -f "$tmp_dir/$BASENAME-" "$i" '/-----BEGIN CERTIFICATE-----/' '{*}' + + for crt in "$tmp_dir/$BASENAME"-*; do + # Create an alias for the certificate + ALIAS=$(openssl x509 -in "$crt" -noout -subject -nameopt -space_eq | sed -n 's/^.*CN=\([^,]*\).*$/\1/p') + + # Add the certificate to the JVM truststore + keytool -import -noprompt -alias "$ALIAS" -file "$crt" -keystore "$JRE_CACERTS_PATH" -storepass changeit >/dev/null + done done # Add additional certificates to the system CA store. This requires write permissions to several system @@ -68,12 +88,12 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # UBI - if which update-ca-trust >/dev/null; then + if command -v update-ca-trust >/dev/null; then update-ca-trust fi # Ubuntu/Alpine - if which update-ca-certificates >/dev/null; then + if command -v update-ca-certificates >/dev/null; then update-ca-certificates fi else @@ -84,6 +104,6 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then fi # Let's provide a variable with the correct path for tools that want or need to use it -export CACERT +export JRE_CACERTS_PATH exec "$@" diff --git a/docker_templates/ubuntu.Dockerfile.j2 b/docker_templates/ubuntu.Dockerfile.j2 index 05dac147a..a74e892a6 100644 --- a/docker_templates/ubuntu.Dockerfile.j2 +++ b/docker_templates/ubuntu.Dockerfile.j2 @@ -43,5 +43,5 @@ ENV JAVA_VERSION {{ java_version }} {% endif %} {% include 'partials/version-check.j2' %} COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] -{% include 'partials/jshell.j2' %} \ No newline at end of file +ENTRYPOINT ["{{ shebang }}", "/__cacert_entrypoint.sh"] +{% include 'partials/jshell.j2' %} diff --git a/generate_dockerfiles.py b/generate_dockerfiles.py index 3708c3ceb..ab4a3351c 100644 --- a/generate_dockerfiles.py +++ b/generate_dockerfiles.py @@ -74,6 +74,7 @@ def archHelper(arch, os_name): directory = configuration["directory"] architectures = configuration["architectures"] os_name = configuration["os"] + shebang = configuration.get("shebang", "") base_image = configuration["image"] deprecated = configuration.get("deprecated", None) versions = configuration.get( @@ -162,6 +163,7 @@ def archHelper(arch, os_name): arch_data=arch_data, os_family=os_family, os=os_name, + shebang=shebang, ) print("Writing Dockerfile to", output_directory) From 988228fb72d86d1e7b54527014f5299da8eb207d Mon Sep 17 00:00:00 2001 From: eclipse-temurin-bot <81643974+eclipse-temurin-bot@users.noreply.github.com> Date: Thu, 25 Jul 2024 16:29:07 +0200 Subject: [PATCH 19/35] Update Dockerfiles (#614) * dockerfile: automated nightly updates * fix permissions of file --------- Co-authored-by: George Adams --- docker_templates/entrypoint.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 docker_templates/entrypoint.sh diff --git a/docker_templates/entrypoint.sh b/docker_templates/entrypoint.sh old mode 100644 new mode 100755 From 81943b9028ea0a11fb864e879c0eead8fad0daef Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 28 Jul 2024 12:56:14 +1200 Subject: [PATCH 20/35] build(deps): bump github/codeql-action from 3.25.13 to 3.25.14 (#617) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.13 to 3.25.14. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/2d790406f505036ef40ecba973cc774a50395aac...5cf07d8b700b67e235fbb65cbc84f69c0cf10464) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index d16a5373e..eac3c2144 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 + uses: github/codeql-action/init@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 + uses: github/codeql-action/autobuild@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 + uses: github/codeql-action/analyze@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 92053794c..3219fe5d7 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@2d790406f505036ef40ecba973cc774a50395aac # v3.25.13 + uses: github/codeql-action/upload-sarif@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 with: sarif_file: results.sarif From 569f71c8e415e395bbb89b73bc19b99d8eb8894c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 09:30:11 +0100 Subject: [PATCH 21/35] build(deps): bump github/codeql-action from 3.25.14 to 3.25.15 (#619) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.14 to 3.25.15. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/5cf07d8b700b67e235fbb65cbc84f69c0cf10464...afb54ba388a7dca6ecae48f608c4ff05ff4cc77a) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index eac3c2144..345dfe564 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 + uses: github/codeql-action/init@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 + uses: github/codeql-action/autobuild@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 + uses: github/codeql-action/analyze@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 3219fe5d7..d1e1b4827 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@5cf07d8b700b67e235fbb65cbc84f69c0cf10464 # v3.25.14 + uses: github/codeql-action/upload-sarif@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 with: sarif_file: results.sarif From 01c5e99bd4580cf93ac99c96dd97fb6c2e5fef86 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 09:35:17 +0100 Subject: [PATCH 22/35] build(deps): bump ossf/scorecard-action from 2.3.3 to 2.4.0 (#618) Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.3 to 2.4.0. - [Release notes](https://github.com/ossf/scorecard-action/releases) - [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md) - [Commits](https://github.com/ossf/scorecard-action/compare/dc50aa9510b46c811795eb24b2f1ba02a914e534...62b2cac7ed8198b15735ed49ab1e5cf35480ba46) --- updated-dependencies: - dependency-name: ossf/scorecard-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/scorecards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index d1e1b4827..0836e70d7 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -36,7 +36,7 @@ jobs: persist-credentials: false - name: "Run analysis" - uses: ossf/scorecard-action@dc50aa9510b46c811795eb24b2f1ba02a914e534 # v2.3.3 + uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0 with: results_file: results.sarif results_format: sarif From f4e2fe57c722bd7c1ffa3bdd68f48fbf472fc1d5 Mon Sep 17 00:00:00 2001 From: George Adams Date: Mon, 29 Jul 2024 15:43:30 +0100 Subject: [PATCH 23/35] use jinja templating to remove distro specific cases in entrypoint.sh (#616) * use jinja templating to remove distro specific cases in entrypoint.sh * fix shebang logic --- 11/jdk/alpine/Dockerfile | 2 +- 11/jdk/alpine/entrypoint.sh | 40 +++++++++--------- 11/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 11/jdk/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 11/jdk/ubuntu/focal/Dockerfile | 4 +- 11/jdk/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 11/jdk/ubuntu/jammy/Dockerfile | 4 +- 11/jdk/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 11/jdk/ubuntu/noble/Dockerfile | 4 +- 11/jdk/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 11/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 11/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 11/jre/alpine/Dockerfile | 2 +- 11/jre/alpine/entrypoint.sh | 40 +++++++++--------- 11/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 11/jre/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 11/jre/ubuntu/focal/Dockerfile | 4 +- 11/jre/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 11/jre/ubuntu/jammy/Dockerfile | 4 +- 11/jre/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 11/jre/ubuntu/noble/Dockerfile | 4 +- 11/jre/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 11/jre/windows/nanoserver-1809/Dockerfile | 2 +- 11/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 17/jdk/alpine/Dockerfile | 2 +- 17/jdk/alpine/entrypoint.sh | 40 +++++++++--------- 17/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 17/jdk/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 17/jdk/ubuntu/focal/Dockerfile | 4 +- 17/jdk/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 17/jdk/ubuntu/jammy/Dockerfile | 4 +- 17/jdk/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 17/jdk/ubuntu/noble/Dockerfile | 4 +- 17/jdk/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 17/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 17/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 17/jre/alpine/Dockerfile | 2 +- 17/jre/alpine/entrypoint.sh | 40 +++++++++--------- 17/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 17/jre/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 17/jre/ubuntu/focal/Dockerfile | 4 +- 17/jre/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 17/jre/ubuntu/jammy/Dockerfile | 4 +- 17/jre/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 17/jre/ubuntu/noble/Dockerfile | 4 +- 17/jre/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 17/jre/windows/nanoserver-1809/Dockerfile | 2 +- 17/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 21/jdk/alpine/Dockerfile | 2 +- 21/jdk/alpine/entrypoint.sh | 40 +++++++++--------- 21/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 21/jdk/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 21/jdk/ubuntu/jammy/Dockerfile | 4 +- 21/jdk/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 21/jdk/ubuntu/noble/Dockerfile | 4 +- 21/jdk/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 21/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 21/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 21/jre/alpine/Dockerfile | 2 +- 21/jre/alpine/entrypoint.sh | 40 +++++++++--------- 21/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 21/jre/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 21/jre/ubuntu/jammy/Dockerfile | 4 +- 21/jre/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 21/jre/ubuntu/noble/Dockerfile | 4 +- 21/jre/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 21/jre/windows/nanoserver-1809/Dockerfile | 2 +- 21/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 22/jdk/alpine/Dockerfile | 2 +- 22/jdk/alpine/entrypoint.sh | 40 +++++++++--------- 22/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 22/jdk/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 22/jdk/ubuntu/jammy/Dockerfile | 4 +- 22/jdk/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 22/jdk/ubuntu/noble/Dockerfile | 4 +- 22/jdk/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 22/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 22/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 22/jre/alpine/Dockerfile | 2 +- 22/jre/alpine/entrypoint.sh | 40 +++++++++--------- 22/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 22/jre/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 22/jre/ubuntu/jammy/Dockerfile | 4 +- 22/jre/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 22/jre/ubuntu/noble/Dockerfile | 4 +- 22/jre/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 22/jre/windows/nanoserver-1809/Dockerfile | 2 +- 22/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 8/jdk/alpine/Dockerfile | 2 +- 8/jdk/alpine/entrypoint.sh | 40 +++++++++--------- 8/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 8/jdk/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 8/jdk/ubuntu/focal/Dockerfile | 4 +- 8/jdk/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 8/jdk/ubuntu/jammy/Dockerfile | 4 +- 8/jdk/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 8/jdk/ubuntu/noble/Dockerfile | 4 +- 8/jdk/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 8/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 8/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- 8/jre/alpine/Dockerfile | 2 +- 8/jre/alpine/entrypoint.sh | 40 +++++++++--------- 8/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 8/jre/ubi/ubi9-minimal/entrypoint.sh | 40 +++++++++--------- 8/jre/ubuntu/focal/Dockerfile | 4 +- 8/jre/ubuntu/focal/entrypoint.sh | 42 +++++++++---------- 8/jre/ubuntu/jammy/Dockerfile | 4 +- 8/jre/ubuntu/jammy/entrypoint.sh | 42 +++++++++---------- 8/jre/ubuntu/noble/Dockerfile | 4 +- 8/jre/ubuntu/noble/entrypoint.sh | 42 +++++++++---------- 8/jre/windows/nanoserver-1809/Dockerfile | 2 +- 8/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- .../windows/windowsservercore-1809/Dockerfile | 2 +- .../windowsservercore-ltsc2022/Dockerfile | 2 +- config/hotspot.yml | 3 -- .../{entrypoint.sh => entrypoint.sh.j2} | 35 +++++++--------- docker_templates/partials/license.j2 | 2 +- docker_templates/ubuntu.Dockerfile.j2 | 4 +- generate_dockerfiles.py | 20 +++++---- 137 files changed, 1089 insertions(+), 1091 deletions(-) rename docker_templates/{entrypoint.sh => entrypoint.sh.j2} (86%) diff --git a/11/jdk/alpine/Dockerfile b/11/jdk/alpine/Dockerfile index 8443793f8..6b2dc1b78 100644 --- a/11/jdk/alpine/Dockerfile +++ b/11/jdk/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jdk/alpine/entrypoint.sh b/11/jdk/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/11/jdk/alpine/entrypoint.sh +++ b/11/jdk/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index 783c1c3bf..736333018 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jdk/ubi/ubi9-minimal/entrypoint.sh b/11/jdk/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/11/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index ced4de72f..7785724f2 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/focal/entrypoint.sh b/11/jdk/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jdk/ubuntu/focal/entrypoint.sh +++ b/11/jdk/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 6f5d50ba8..b32ecab9b 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/jammy/entrypoint.sh b/11/jdk/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jdk/ubuntu/jammy/entrypoint.sh +++ b/11/jdk/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index 6d9976623..dc0797cca 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -100,6 +100,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/noble/entrypoint.sh b/11/jdk/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jdk/ubuntu/noble/entrypoint.sh +++ b/11/jdk/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jdk/windows/nanoserver-1809/Dockerfile b/11/jdk/windows/nanoserver-1809/Dockerfile index 608383fb2..4b08d43a5 100644 --- a/11/jdk/windows/nanoserver-1809/Dockerfile +++ b/11/jdk/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile index dc1c16380..c50508130 100644 --- a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jdk/windows/windowsservercore-1809/Dockerfile b/11/jdk/windows/windowsservercore-1809/Dockerfile index dd1d76011..0cde96461 100644 --- a/11/jdk/windows/windowsservercore-1809/Dockerfile +++ b/11/jdk/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 9fe8159ca..75cf96a7e 100644 --- a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/alpine/Dockerfile b/11/jre/alpine/Dockerfile index c02f16c04..f5254041e 100644 --- a/11/jre/alpine/Dockerfile +++ b/11/jre/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/alpine/entrypoint.sh b/11/jre/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/11/jre/alpine/entrypoint.sh +++ b/11/jre/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 492b564f0..25a03b51c 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/ubi/ubi9-minimal/entrypoint.sh b/11/jre/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/11/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index bbf2da35c..e55c6226a 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/focal/entrypoint.sh b/11/jre/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jre/ubuntu/focal/entrypoint.sh +++ b/11/jre/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index e83a6b1cc..1438bd97d 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/jammy/entrypoint.sh b/11/jre/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jre/ubuntu/jammy/entrypoint.sh +++ b/11/jre/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 823e6c30b..e1ecfaed3 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/noble/entrypoint.sh b/11/jre/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/11/jre/ubuntu/noble/entrypoint.sh +++ b/11/jre/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/11/jre/windows/nanoserver-1809/Dockerfile b/11/jre/windows/nanoserver-1809/Dockerfile index ebac5513d..ebd8f4c6c 100644 --- a/11/jre/windows/nanoserver-1809/Dockerfile +++ b/11/jre/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/windows/nanoserver-ltsc2022/Dockerfile b/11/jre/windows/nanoserver-ltsc2022/Dockerfile index bcbfdc1e2..b45eb7ef1 100644 --- a/11/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/windows/windowsservercore-1809/Dockerfile b/11/jre/windows/windowsservercore-1809/Dockerfile index b454244b2..880ee7662 100644 --- a/11/jre/windows/windowsservercore-1809/Dockerfile +++ b/11/jre/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile index 9c5b59663..8b83a3f61 100644 --- a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/alpine/Dockerfile b/17/jdk/alpine/Dockerfile index f351d299d..b9a1fad7c 100644 --- a/17/jdk/alpine/Dockerfile +++ b/17/jdk/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/alpine/entrypoint.sh b/17/jdk/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/17/jdk/alpine/entrypoint.sh +++ b/17/jdk/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 7cc7598d0..f084a7057 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/ubi/ubi9-minimal/entrypoint.sh b/17/jdk/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/17/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index 669e7130a..dfcfd223f 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/focal/entrypoint.sh b/17/jdk/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jdk/ubuntu/focal/entrypoint.sh +++ b/17/jdk/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index 9cdf27770..132a94f11 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/jammy/entrypoint.sh b/17/jdk/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jdk/ubuntu/jammy/entrypoint.sh +++ b/17/jdk/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index ca0f958f3..f9ef5f4a0 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -103,6 +103,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/noble/entrypoint.sh b/17/jdk/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jdk/ubuntu/noble/entrypoint.sh +++ b/17/jdk/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jdk/windows/nanoserver-1809/Dockerfile b/17/jdk/windows/nanoserver-1809/Dockerfile index 576ccdd76..4f6d21e53 100644 --- a/17/jdk/windows/nanoserver-1809/Dockerfile +++ b/17/jdk/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile index 0b2c7d4ec..8d0bfa294 100644 --- a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/windows/windowsservercore-1809/Dockerfile b/17/jdk/windows/windowsservercore-1809/Dockerfile index a760aafe8..1826e2d59 100644 --- a/17/jdk/windows/windowsservercore-1809/Dockerfile +++ b/17/jdk/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 436d4fde9..a152fef82 100644 --- a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/alpine/Dockerfile b/17/jre/alpine/Dockerfile index 29fc49a93..32554041b 100644 --- a/17/jre/alpine/Dockerfile +++ b/17/jre/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/alpine/entrypoint.sh b/17/jre/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/17/jre/alpine/entrypoint.sh +++ b/17/jre/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 9fe05cba6..9ccc76d3a 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/ubi/ubi9-minimal/entrypoint.sh b/17/jre/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/17/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 40c4b1b2a..2f9f36f23 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/focal/entrypoint.sh b/17/jre/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jre/ubuntu/focal/entrypoint.sh +++ b/17/jre/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index 0411cbcdd..b2598c80e 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/jammy/entrypoint.sh b/17/jre/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jre/ubuntu/jammy/entrypoint.sh +++ b/17/jre/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index 7e32e9ba1..9cb7a195c 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -98,4 +98,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/noble/entrypoint.sh b/17/jre/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/17/jre/ubuntu/noble/entrypoint.sh +++ b/17/jre/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/17/jre/windows/nanoserver-1809/Dockerfile b/17/jre/windows/nanoserver-1809/Dockerfile index f77a12c2e..6a7ea9cad 100644 --- a/17/jre/windows/nanoserver-1809/Dockerfile +++ b/17/jre/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/windows/nanoserver-ltsc2022/Dockerfile b/17/jre/windows/nanoserver-ltsc2022/Dockerfile index 6d0d7a569..345d14587 100644 --- a/17/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/windows/windowsservercore-1809/Dockerfile b/17/jre/windows/windowsservercore-1809/Dockerfile index 0dea88744..25eb6e4a4 100644 --- a/17/jre/windows/windowsservercore-1809/Dockerfile +++ b/17/jre/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile index 16da9b031..b2978d704 100644 --- a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/alpine/Dockerfile b/21/jdk/alpine/Dockerfile index c9f27519d..01bae8796 100644 --- a/21/jdk/alpine/Dockerfile +++ b/21/jdk/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/alpine/entrypoint.sh b/21/jdk/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/21/jdk/alpine/entrypoint.sh +++ b/21/jdk/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 2d6cfb2ab..375f97d2e 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/ubi/ubi9-minimal/entrypoint.sh b/21/jdk/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/21/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index 17732f4a6..133239fbc 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -99,6 +99,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/jammy/entrypoint.sh b/21/jdk/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/21/jdk/ubuntu/jammy/entrypoint.sh +++ b/21/jdk/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index bc43e034a..5aae3ad2d 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -99,6 +99,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/noble/entrypoint.sh b/21/jdk/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/21/jdk/ubuntu/noble/entrypoint.sh +++ b/21/jdk/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jdk/windows/nanoserver-1809/Dockerfile b/21/jdk/windows/nanoserver-1809/Dockerfile index a986f77be..f14440fad 100644 --- a/21/jdk/windows/nanoserver-1809/Dockerfile +++ b/21/jdk/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile index 6f667bb48..ad58ac7d8 100644 --- a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/windows/windowsservercore-1809/Dockerfile b/21/jdk/windows/windowsservercore-1809/Dockerfile index 0570a1022..f645044a9 100644 --- a/21/jdk/windows/windowsservercore-1809/Dockerfile +++ b/21/jdk/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 31c272e9c..0b89e1517 100644 --- a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/alpine/Dockerfile b/21/jre/alpine/Dockerfile index 4b59fbe16..52799021d 100644 --- a/21/jre/alpine/Dockerfile +++ b/21/jre/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/alpine/entrypoint.sh b/21/jre/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/21/jre/alpine/entrypoint.sh +++ b/21/jre/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index d3cfe952b..d14d86656 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/ubi/ubi9-minimal/entrypoint.sh b/21/jre/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/21/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index c4e1bfff0..a7d00900f 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -94,4 +94,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/jammy/entrypoint.sh b/21/jre/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/21/jre/ubuntu/jammy/entrypoint.sh +++ b/21/jre/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index bcdb398e6..f8b6ac128 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -94,4 +94,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/noble/entrypoint.sh b/21/jre/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/21/jre/ubuntu/noble/entrypoint.sh +++ b/21/jre/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/21/jre/windows/nanoserver-1809/Dockerfile b/21/jre/windows/nanoserver-1809/Dockerfile index 5f38cd56f..849fe8119 100644 --- a/21/jre/windows/nanoserver-1809/Dockerfile +++ b/21/jre/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/windows/nanoserver-ltsc2022/Dockerfile b/21/jre/windows/nanoserver-ltsc2022/Dockerfile index 86eb14dc0..78481dd3c 100644 --- a/21/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/windows/windowsservercore-1809/Dockerfile b/21/jre/windows/windowsservercore-1809/Dockerfile index 78a64ba8d..da8e75495 100644 --- a/21/jre/windows/windowsservercore-1809/Dockerfile +++ b/21/jre/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile index f72a68929..8b03a818b 100644 --- a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/alpine/Dockerfile b/22/jdk/alpine/Dockerfile index 79f1b57b2..5b20df4d8 100644 --- a/22/jdk/alpine/Dockerfile +++ b/22/jdk/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/alpine/entrypoint.sh b/22/jdk/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/22/jdk/alpine/entrypoint.sh +++ b/22/jdk/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index c7e956427..fa33c10fa 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/ubi/ubi9-minimal/entrypoint.sh b/22/jdk/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/22/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index 0a68998ba..ec0f33034 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -97,6 +97,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/jammy/entrypoint.sh b/22/jdk/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/22/jdk/ubuntu/jammy/entrypoint.sh +++ b/22/jdk/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index fa41d3d99..39fce803e 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -97,6 +97,6 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/noble/entrypoint.sh b/22/jdk/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/22/jdk/ubuntu/noble/entrypoint.sh +++ b/22/jdk/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jdk/windows/nanoserver-1809/Dockerfile b/22/jdk/windows/nanoserver-1809/Dockerfile index f542b7462..a5d4e09ba 100644 --- a/22/jdk/windows/nanoserver-1809/Dockerfile +++ b/22/jdk/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile index 177533443..9bb8993c3 100644 --- a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/windows/windowsservercore-1809/Dockerfile b/22/jdk/windows/windowsservercore-1809/Dockerfile index 374710994..7aca8f36e 100644 --- a/22/jdk/windows/windowsservercore-1809/Dockerfile +++ b/22/jdk/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 6fd8c98e4..c5a441539 100644 --- a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/alpine/Dockerfile b/22/jre/alpine/Dockerfile index 01f77b4a4..f27a32121 100644 --- a/22/jre/alpine/Dockerfile +++ b/22/jre/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/alpine/entrypoint.sh b/22/jre/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/22/jre/alpine/entrypoint.sh +++ b/22/jre/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index 3f8715bf1..da209dcac 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/ubi/ubi9-minimal/entrypoint.sh b/22/jre/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/22/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index 714892d7a..46e2cbadd 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -92,4 +92,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/jammy/entrypoint.sh b/22/jre/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/22/jre/ubuntu/jammy/entrypoint.sh +++ b/22/jre/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 65571a1a1..1bda68aa5 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -92,4 +92,4 @@ RUN set -eux; \ echo "java --version"; java --version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/noble/entrypoint.sh b/22/jre/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/22/jre/ubuntu/noble/entrypoint.sh +++ b/22/jre/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/22/jre/windows/nanoserver-1809/Dockerfile b/22/jre/windows/nanoserver-1809/Dockerfile index 14df9cca7..22201ab09 100644 --- a/22/jre/windows/nanoserver-1809/Dockerfile +++ b/22/jre/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/windows/nanoserver-ltsc2022/Dockerfile b/22/jre/windows/nanoserver-ltsc2022/Dockerfile index 7a66c39f8..4a8d37113 100644 --- a/22/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/windows/windowsservercore-1809/Dockerfile b/22/jre/windows/windowsservercore-1809/Dockerfile index 98789cc8d..8e6ff35f2 100644 --- a/22/jre/windows/windowsservercore-1809/Dockerfile +++ b/22/jre/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile index a10ea0a8a..9785d07d0 100644 --- a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/alpine/Dockerfile b/8/jdk/alpine/Dockerfile index 2b79e9f3f..0c5489763 100644 --- a/8/jdk/alpine/Dockerfile +++ b/8/jdk/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/alpine/entrypoint.sh b/8/jdk/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/8/jdk/alpine/entrypoint.sh +++ b/8/jdk/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index 030e63d15..47229398d 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/ubi/ubi9-minimal/entrypoint.sh b/8/jdk/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/8/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index 6a91f96f7..ff1850935 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/focal/entrypoint.sh b/8/jdk/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jdk/ubuntu/focal/entrypoint.sh +++ b/8/jdk/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index a81eeb80f..c6f272a92 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/jammy/entrypoint.sh b/8/jdk/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jdk/ubuntu/jammy/entrypoint.sh +++ b/8/jdk/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index e4aa7a51f..59ea675c2 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -96,4 +96,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/noble/entrypoint.sh b/8/jdk/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jdk/ubuntu/noble/entrypoint.sh +++ b/8/jdk/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jdk/windows/nanoserver-1809/Dockerfile b/8/jdk/windows/nanoserver-1809/Dockerfile index 17df0ca11..850540eba 100644 --- a/8/jdk/windows/nanoserver-1809/Dockerfile +++ b/8/jdk/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile index 3d5e2d955..69424d228 100644 --- a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/windows/windowsservercore-1809/Dockerfile b/8/jdk/windows/windowsservercore-1809/Dockerfile index ed16e1dfe..48e9d9b4b 100644 --- a/8/jdk/windows/windowsservercore-1809/Dockerfile +++ b/8/jdk/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 3bbe14634..50f75fd22 100644 --- a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/alpine/Dockerfile b/8/jre/alpine/Dockerfile index 5e2245f9c..c25b62992 100644 --- a/8/jre/alpine/Dockerfile +++ b/8/jre/alpine/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/alpine/entrypoint.sh b/8/jre/alpine/entrypoint.sh index dcc51cd2b..c3f02618e 100755 --- a/8/jre/alpine/entrypoint.sh +++ b/8/jre/alpine/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index 582f238ef..2724e6d6b 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/ubi/ubi9-minimal/entrypoint.sh b/8/jre/ubi/ubi9-minimal/entrypoint.sh index dcc51cd2b..09be1167d 100755 --- a/8/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jre/ubi/ubi9-minimal/entrypoint.sh @@ -1,4 +1,22 @@ #!/usr/bin/env sh +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ fi + update-ca-trust else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index d3a1d52b6..83c57b899 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/focal/entrypoint.sh b/8/jre/ubuntu/focal/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jre/ubuntu/focal/entrypoint.sh +++ b/8/jre/ubuntu/focal/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 88c175088..1ae8f2c2a 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/jammy/entrypoint.sh b/8/jre/ubuntu/jammy/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jre/ubuntu/jammy/entrypoint.sh +++ b/8/jre/ubuntu/jammy/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index 982b49743..e97bf7008 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ @@ -95,4 +95,4 @@ RUN set -eux; \ echo "java -version"; java -version; \ echo "Complete." COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/bin/bash", "/__cacert_entrypoint.sh"] +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/noble/entrypoint.sh b/8/jre/ubuntu/noble/entrypoint.sh index dcc51cd2b..2d2040468 100755 --- a/8/jre/ubuntu/noble/entrypoint.sh +++ b/8/jre/ubuntu/noble/entrypoint.sh @@ -1,4 +1,22 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash +# ------------------------------------------------------------------------------ +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" +# +# PLEASE DO NOT EDIT IT DIRECTLY. +# ------------------------------------------------------------------------------ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +93,9 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust - fi - - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates + cp -La /certificates/* /usr/local/share/ca-certificates/ fi + update-ca-certificates else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. diff --git a/8/jre/windows/nanoserver-1809/Dockerfile b/8/jre/windows/nanoserver-1809/Dockerfile index b1985196a..958458754 100644 --- a/8/jre/windows/nanoserver-1809/Dockerfile +++ b/8/jre/windows/nanoserver-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/windows/nanoserver-ltsc2022/Dockerfile b/8/jre/windows/nanoserver-ltsc2022/Dockerfile index 9f4881ce0..dd1f96704 100644 --- a/8/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/windows/windowsservercore-1809/Dockerfile b/8/jre/windows/windowsservercore-1809/Dockerfile index 05ee81764..e7dc705ca 100644 --- a/8/jre/windows/windowsservercore-1809/Dockerfile +++ b/8/jre/windows/windowsservercore-1809/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile index 234c0310f..a8a82d8ea 100644 --- a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/config/hotspot.yml b/config/hotspot.yml index 8b47bc518..15e1d7775 100644 --- a/config/hotspot.yml +++ b/config/hotspot.yml @@ -23,7 +23,6 @@ configurations: architectures: [aarch64, arm, ppc64le, s390x, x64] # `bash` is required for Ubuntu-based images to correctly resolve # environment variables.with.dots.in.them. - shebang: /bin/bash os: ubuntu - directory: ubuntu/jammy @@ -32,7 +31,6 @@ configurations: deprecated: 23 # `bash` is required for Ubuntu-based images to correctly resolve # environment variables.with.dots.in.them. - shebang: /bin/bash os: ubuntu - directory: ubuntu/focal @@ -41,7 +39,6 @@ configurations: deprecated: 20 # `bash` is required for Ubuntu-based images to correctly resolve # environment variables.with.dots.in.them. - shebang: /bin/bash os: ubuntu - directory: ubi/ubi9-minimal diff --git a/docker_templates/entrypoint.sh b/docker_templates/entrypoint.sh.j2 similarity index 86% rename from docker_templates/entrypoint.sh rename to docker_templates/entrypoint.sh.j2 index dcc51cd2b..4e4baac20 100755 --- a/docker_templates/entrypoint.sh +++ b/docker_templates/entrypoint.sh.j2 @@ -1,4 +1,9 @@ +{%- if os == "ubuntu" -%} +#!/usr/bin/env bash +{%- else -%} #!/usr/bin/env sh +{%- endif %} +{% include 'partials/license.j2' %} # This script defines `sh` as the interpreter, which is available in all POSIX environments. However, it might get # started with `bash` as the shell to support dotted.environment.variable.names which are not supported by POSIX, but # are supported by `sh` in some Linux flavours. @@ -75,27 +80,18 @@ if [ -n "$USE_SYSTEM_CA_CERTS" ]; then # The reason why this is not part of the opt-in is because it leaves open the option to mount certificates at the # system location, for whatever reason. if [ -d /certificates ] && [ "$(ls -A /certificates 2>/dev/null)" ]; then - - # UBI - if [ -d /usr/share/pki/ca-trust-source/anchors/ ]; then - cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ - fi - - # Ubuntu/Alpine - if [ -d /usr/local/share/ca-certificates/ ]; then - cp -La /certificates/* /usr/local/share/ca-certificates/ - fi - fi - - # UBI - if command -v update-ca-trust >/dev/null; then - update-ca-trust + {%- if os == "ubuntu" or os == "alpine-linux" %} + cp -La /certificates/* /usr/local/share/ca-certificates/ + {%- elif os == "ubi9-minimal" %} + cp -La /certificates/* /usr/share/pki/ca-trust-source/anchors/ + {%- endif %} fi - # Ubuntu/Alpine - if command -v update-ca-certificates >/dev/null; then - update-ca-certificates - fi + {%- if os == "ubuntu" or os == "alpine-linux" %} + update-ca-certificates + {%- elif os == "ubi9-minimal" %} + update-ca-trust + {%- endif %} else # If we are not root, we cannot update the system truststore. That's bad news for tools like `curl` and `wget`, # but since the JVM is the primary focus here, we can live with that. @@ -107,3 +103,4 @@ fi export JRE_CACERTS_PATH exec "$@" + diff --git a/docker_templates/partials/license.j2 b/docker_templates/partials/license.j2 index affaabf52..80dc5feef 100644 --- a/docker_templates/partials/license.j2 +++ b/docker_templates/partials/license.j2 @@ -1,5 +1,5 @@ # ------------------------------------------------------------------------------ -# NOTE: THIS DOCKERFILE IS GENERATED VIA "generate_dockerfiles.py" +# NOTE: THIS FILE IS GENERATED VIA "generate_dockerfiles.py" # # PLEASE DO NOT EDIT IT DIRECTLY. # ------------------------------------------------------------------------------ diff --git a/docker_templates/ubuntu.Dockerfile.j2 b/docker_templates/ubuntu.Dockerfile.j2 index a74e892a6..05dac147a 100644 --- a/docker_templates/ubuntu.Dockerfile.j2 +++ b/docker_templates/ubuntu.Dockerfile.j2 @@ -43,5 +43,5 @@ ENV JAVA_VERSION {{ java_version }} {% endif %} {% include 'partials/version-check.j2' %} COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["{{ shebang }}", "/__cacert_entrypoint.sh"] -{% include 'partials/jshell.j2' %} +ENTRYPOINT ["/__cacert_entrypoint.sh"] +{% include 'partials/jshell.j2' %} \ No newline at end of file diff --git a/generate_dockerfiles.py b/generate_dockerfiles.py index ab4a3351c..d4007cd1d 100644 --- a/generate_dockerfiles.py +++ b/generate_dockerfiles.py @@ -74,7 +74,6 @@ def archHelper(arch, os_name): directory = configuration["directory"] architectures = configuration["architectures"] os_name = configuration["os"] - shebang = configuration.get("shebang", "") base_image = configuration["image"] deprecated = configuration.get("deprecated", None) versions = configuration.get( @@ -163,7 +162,6 @@ def archHelper(arch, os_name): arch_data=arch_data, os_family=os_family, os=os_name, - shebang=shebang, ) print("Writing Dockerfile to", output_directory) @@ -177,12 +175,18 @@ def archHelper(arch, os_name): # Entrypoint is currently only needed for CA certificate handling, which is not (yet) # available on Windows - # Copy entrypoint.sh to output directory - entrypoint_path = os.path.join("docker_templates", "entrypoint.sh") + # Generate entrypoint.sh + template_entrypoint_file = "entrypoint.sh.j2" + template_entrypoint = env.get_template(template_entrypoint_file) - if os.path.exists(entrypoint_path): - os.system( - f"cp {entrypoint_path} {os.path.join(output_directory, 'entrypoint.sh')}" - ) + entrypoint = template_entrypoint.render( + os=os_name, + ) + + with open( + os.path.join(output_directory, "entrypoint.sh"), "w" + ) as out_file: + out_file.write(entrypoint) + os.chmod(os.path.join(output_directory, "entrypoint.sh"), 0o755) print("Dockerfiles generated successfully!") From ce8ffcb6ed560878bf3c5b36c7e18dae97136bb1 Mon Sep 17 00:00:00 2001 From: George Adams Date: Sat, 3 Aug 2024 09:45:27 +0100 Subject: [PATCH 24/35] First draft of distro support doc (#610) * Fist draft of distro support doc * Apply suggestions from code review Co-authored-by: Tim Ellison --------- Co-authored-by: Tim Ellison --- .github/ISSUE_TEMPLATE/new-distro.yml | 44 ++++++++++ ADDING_DISTROS.md | 121 ++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/new-distro.yml create mode 100644 ADDING_DISTROS.md diff --git a/.github/ISSUE_TEMPLATE/new-distro.yml b/.github/ISSUE_TEMPLATE/new-distro.yml new file mode 100644 index 000000000..34870cf96 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/new-distro.yml @@ -0,0 +1,44 @@ +name: New Distribution Proposal +description: Template for proposing support for a new distribution. +title: "Proposal: [Distribution Name] [Version] Support" +labels: ["PMC-agenda"] +body: + - type: markdown + attributes: + value: "## New Distribution Proposal\nThank you for proposing a new distribution for support in the Adoptium project! Please fill out the following details to help us evaluate the proposal." + + - type: input + id: distribution-name + attributes: + label: "Distribution Name" + description: "What is the name of the distribution you are proposing?" + placeholder: "e.g., Ubuntu, Fedora, etc." + validations: + required: true + + - type: input + id: distribution-version + attributes: + label: "Distribution Version" + description: "What is the version of the distribution you are proposing?" + placeholder: "e.g., 20.04, 34, etc." + validations: + required: true + + - type: textarea + id: justification + attributes: + label: "Justification for Inclusion" + description: "Please provide a detailed justification for why this distribution should be supported." + placeholder: "Explain the demand, usage statistics, community interest, etc." + validations: + required: true + + - type: checkboxes + id: lts-confirmation + attributes: + label: "Long-Term Support Confirmation" + description: "Confirm that this distribution is a Long-Term Support (LTS) version." + options: + - label: "This distribution is an LTS version and will receive long-term support from its maintainers." + required: true diff --git a/ADDING_DISTROS.md b/ADDING_DISTROS.md new file mode 100644 index 000000000..673dc0b19 --- /dev/null +++ b/ADDING_DISTROS.md @@ -0,0 +1,121 @@ +# Adding New Operating System Distributions and Versions to Eclipse Temurin Support + +## 1. Introduction + +This document aims to formalize the process and criteria for adding Eclipse Temurin support of new operating system distributions. Adoptium currently supports a range of Long-Term Support (LTS) distributions and is committed to ensuring that new additions meet the community's needs and project's standards. + +## 2. Current Supported Distributions + +The current list of supported distributions can be seen at [Supported Platforms](https://adoptium.net/supported-platforms/). The Docker icon indicates which distributions are supported as part of the official image manifest. + +## 3. Criteria for Adding New Distributions + +All proposals for new distributions must be reviewed and approved by the Project Management Committee (PMC). The PMC evaluates each proposal based on the established criteria to ensure that the addition aligns with the project's strategic goals and resource capabilities. + +### 3.1 Long-Term Support (LTS) Requirement + +Only distributions with a commitment to long-term support are considered to ensure stability and ongoing support. + +### 3.2 Community Demand + +The distribution must demonstrate significant demand from the Adoptium community or enterprise users. Strong consideration will be given to proposals received from [Adoptium Working Group Members](https://adoptium.net/members/). + +### 3.3 Technical Feasibility + +The distribution should be capable of supporting the Eclipse Temurin versions without requiring excessive adaptations. + +### 3.4 Compatibility Testing + +The Adoptium project must have access to sufficient quantity of testing resources matching the proposed distribution to enable. New distributions must pass a predefined set of compatibility tests to confirm that existing functionalities are not adversely affected. + +### 3.5 Official Base Images + +Because Eclipse Temurin images are published as [official images](https://docs.docker.com/trusted-content/official-images/) in collaboration with Docker, there are restrictions as to which base images can be supported. + +### 3.5 Encouraging Flexible Deployment via Docker + +While we strive to support a range of widely-used distributions, our main goal is not to support every possible distribution. Instead, we encourage users to leverage Docker's `COPY` command to deploy Java and other dependencies on top of any base image they prefer. This approach allows users greater flexibility and control over their deployment environments, aligning with modern best practices for software distribution and deployment. + +#### Example of Using Docker `COPY`: + +```dockerfile +# Use an arbitrary base image +FROM your-choice-of-base-image + +# Copy the JDK from an Eclipse Temurin image +COPY --from=eclipse-temurin:21-jdk /opt/java/openjdk /opt/java/openjdk + +# Set environment variables for Java +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +# Continue with your application setup +``` + +## 4. Process for Adding New Distributions + +### 4.1 Proposal Submission + +Contributors may submit proposals for new distributions by filling out a specified template that includes: +- Distribution name and version +- Justification for inclusion +- LTS evidence +- Evidence of community interest +- Preliminary compatibility assessment + +### 4.2 Review Process + +Proposals are reviewed by the Project Management Committee, with decisions documented in the approved minutes of the meeting and shared in the issue proposing the addition. + +### 4.3 Implementation + +Upon approval, the following steps are taken: +- Setup of build and test environments +- Integration into existing CI/CD pipelines +- Monitoring initial deployment + +### 4.4 Documentation + +All support for new distributions is documented in the official project documentation and announced via official channels. + +### 4.5 Announcement + +New distribution support is announced in the project newsletter and on major community channels. + +## 5. Deprecation and End-of-Life Policy + +Adoptium is committed to providing robust and secure software environments. To maintain the integrity and security of our distributions, it is necessary to phase out support for distributions that reach their End-of-Life (EOL). This policy outlines the steps and considerations involved in the deprecation process. + +### 5.1 Definition of End-of-Life + +A distribution reaches End-of-Life when it no longer receives updates and patches from its original maintainers. This includes security patches, performance improvements, and compatibility updates. Ultimately, the PMC will determine if a distribution is to be considered deprecated. + +### 5.2 Deprecation Process + +Upon a distribution reaching its EOL, Adoptium will take the following steps: + +1. **Announcement**: We will aim to announce the impending deprecation through our official channels at least six months prior to the final update. This announcement will include the final date of support and recommended migration paths for users. + +2. **Final Update**: The last update provided will ensure that the distribution remains secure and stable until the EOL date. + +3. **Removal from Active Support**: After the final update, no further builds or updates will be published for the EOL distribution. Documentation will be updated to reflect the distribution's deprecated status. + +4. **Documentation and Guidance**: Provide detailed guidance on migrating to supported distributions, including potential substitutes that offer similar or improved functionality. + +### 5.3 Encouraging Migration + +Users are encouraged to plan their migration strategies well before the EOL date to ensure seamless transitions to supported distributions. Adoptium is committed to assisting in these migration efforts through documentation, community support, and direct assistance where possible. + +### 5.4 Archive and Access + +While updates will cease for EOL distributions, previous tagged versions will remain available for historical access and audit purposes. These archived versions are not recommended for use in production environments as they will not receive updates or security patches. + +This policy ensures that Adoptium can focus resources on supporting and developing distributions that provide the most value and security to our users, while also adhering to best practices in software maintenance and support. + +## 6. Amendment Procedure + +The process for updating this document includes community consultation and must be approved by a majority of the Project Management Committee (PMC). + +## Feedback and Improvements + +Feedback on this document is welcome and can be submitted via [GitHub issues](https://github.com/adoptium/containers/issues/new/choose). From 6b0f4ac5cd59aea92cc6154e4d7a7e07e69ad436 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Aug 2024 04:51:09 +0000 Subject: [PATCH 25/35] build(deps): bump actions/upload-artifact from 4.3.4 to 4.3.5 (#622) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.4 to 4.3.5. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/0b2256b8c012f0828dc542b3febcab082c67f72b...89ef406dd8d7e03cfd12d9e0a4a378f454709029) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/scorecards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 0836e70d7..4583f125e 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -58,7 +58,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4 + uses: actions/upload-artifact@89ef406dd8d7e03cfd12d9e0a4a378f454709029 # v4.3.5 with: name: SARIF file path: results.sarif From a7957a2edde35ab68252c0ac570648e363b690bb Mon Sep 17 00:00:00 2001 From: George Adams Date: Mon, 5 Aug 2024 13:07:44 +0100 Subject: [PATCH 26/35] fixup token permissions (#621) --- .github/workflows/auto-merge.yml | 7 ++++--- .github/workflows/code-freeze.yml | 7 ++++--- .github/workflows/dependabot-auto-merge.yml | 7 ++++--- .github/workflows/test-pr.yml | 2 ++ .github/workflows/updater.yml | 2 ++ 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/.github/workflows/auto-merge.yml b/.github/workflows/auto-merge.yml index 460e23188..fc7453a6d 100644 --- a/.github/workflows/auto-merge.yml +++ b/.github/workflows/auto-merge.yml @@ -4,12 +4,13 @@ on: pull_request: types: [labeled] -permissions: - contents: write - pull-requests: write +permissions: read-all jobs: automerge: + permissions: + contents: write + pull-requests: write uses: adoptium/.github/.github/workflows/pr-auto-merge.yml@main with: allowed-author: eclipse-temurin-bot diff --git a/.github/workflows/code-freeze.yml b/.github/workflows/code-freeze.yml index 884b178bc..f14e3ad89 100644 --- a/.github/workflows/code-freeze.yml +++ b/.github/workflows/code-freeze.yml @@ -19,13 +19,14 @@ on: issue_comment: types: [created] -permissions: - contents: write - pull-requests: write +permissions: read-all jobs: # Check if the pull request target branch matches the required branch-regex? codefreeze_branch_check: + permissions: + contents: write + pull-requests: write uses: adoptium/.github/.github/workflows/code-freeze-regex-branch.yml@main with: branch-regex: "^main$" diff --git a/.github/workflows/dependabot-auto-merge.yml b/.github/workflows/dependabot-auto-merge.yml index be789c6c5..2f75be406 100644 --- a/.github/workflows/dependabot-auto-merge.yml +++ b/.github/workflows/dependabot-auto-merge.yml @@ -1,10 +1,11 @@ name: Dependabot auto-merge on: pull_request_target -permissions: - contents: write - pull-requests: write +permissions: read-all jobs: dependabot: + permissions: + contents: write + pull-requests: write uses: adoptium/.github/.github/workflows/dependabot-auto-merge.yml@main diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index cd75aa12f..694a5d44f 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -11,6 +11,8 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true +permissions: read-all + jobs: generate-jobs: name: Generate Jobs diff --git a/.github/workflows/updater.yml b/.github/workflows/updater.yml index d6ee6308c..d7c04a3b9 100644 --- a/.github/workflows/updater.yml +++ b/.github/workflows/updater.yml @@ -5,6 +5,8 @@ on: # Runs every half hour - cron: "*/30 * * * *" +permissions: read-all + jobs: update_dockerfile: permissions: From a5a4244499238c6252d06cfcf3a3df9b44304788 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 13:24:20 +0100 Subject: [PATCH 27/35] build(deps): bump github/codeql-action from 3.25.15 to 3.26.0 (#626) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.25.15 to 3.26.0. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/afb54ba388a7dca6ecae48f608c4ff05ff4cc77a...eb055d739abdc2e8de2e5f4ba1a8b246daa779aa) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 345dfe564..42d9b190a 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 + uses: github/codeql-action/init@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 + uses: github/codeql-action/autobuild@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 + uses: github/codeql-action/analyze@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 4583f125e..bea99dc7d 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@afb54ba388a7dca6ecae48f608c4ff05ff4cc77a # v3.25.15 + uses: github/codeql-action/upload-sarif@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 with: sarif_file: results.sarif From 1ee39305700483ff4a9c78cc849329c6c08786f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 13:25:09 +0100 Subject: [PATCH 28/35] build(deps): bump actions/upload-artifact from 4.3.5 to 4.3.6 (#625) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.5 to 4.3.6. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/89ef406dd8d7e03cfd12d9e0a4a378f454709029...834a144ee995460fba8ed112a2fc961b36a5ec5a) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/scorecards.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index bea99dc7d..3688dc46e 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -58,7 +58,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@89ef406dd8d7e03cfd12d9e0a4a378f454709029 # v4.3.5 + uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6 with: name: SARIF file path: results.sarif From 3af43b469027c0c2241bf6dd066ec93ef2b9ff66 Mon Sep 17 00:00:00 2001 From: George Adams Date: Wed, 7 Aug 2024 19:55:01 +0100 Subject: [PATCH 29/35] further entrypoint.sh templating improvements (#627) --- 11/jdk/alpine/entrypoint.sh | 5 ----- 11/jdk/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 11/jdk/ubuntu/focal/entrypoint.sh | 5 ----- 11/jdk/ubuntu/jammy/entrypoint.sh | 5 ----- 11/jdk/ubuntu/noble/entrypoint.sh | 5 ----- 11/jre/alpine/entrypoint.sh | 5 ----- 11/jre/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 11/jre/ubuntu/focal/entrypoint.sh | 5 ----- 11/jre/ubuntu/jammy/entrypoint.sh | 5 ----- 11/jre/ubuntu/noble/entrypoint.sh | 5 ----- 17/jdk/alpine/entrypoint.sh | 5 ----- 17/jdk/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 17/jdk/ubuntu/focal/entrypoint.sh | 5 ----- 17/jdk/ubuntu/jammy/entrypoint.sh | 5 ----- 17/jdk/ubuntu/noble/entrypoint.sh | 5 ----- 17/jre/alpine/entrypoint.sh | 5 ----- 17/jre/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 17/jre/ubuntu/focal/entrypoint.sh | 5 ----- 17/jre/ubuntu/jammy/entrypoint.sh | 5 ----- 17/jre/ubuntu/noble/entrypoint.sh | 5 ----- 21/jdk/alpine/entrypoint.sh | 5 ----- 21/jdk/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 21/jdk/ubuntu/jammy/entrypoint.sh | 5 ----- 21/jdk/ubuntu/noble/entrypoint.sh | 5 ----- 21/jre/alpine/entrypoint.sh | 5 ----- 21/jre/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 21/jre/ubuntu/jammy/entrypoint.sh | 5 ----- 21/jre/ubuntu/noble/entrypoint.sh | 5 ----- 22/jdk/alpine/entrypoint.sh | 5 ----- 22/jdk/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 22/jdk/ubuntu/jammy/entrypoint.sh | 5 ----- 22/jdk/ubuntu/noble/entrypoint.sh | 5 ----- 22/jre/alpine/entrypoint.sh | 5 ----- 22/jre/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 22/jre/ubuntu/jammy/entrypoint.sh | 5 ----- 22/jre/ubuntu/noble/entrypoint.sh | 5 ----- 8/jdk/alpine/entrypoint.sh | 6 +----- 8/jdk/ubi/ubi9-minimal/entrypoint.sh | 6 +----- 8/jdk/ubuntu/focal/entrypoint.sh | 6 +----- 8/jdk/ubuntu/jammy/entrypoint.sh | 6 +----- 8/jdk/ubuntu/noble/entrypoint.sh | 6 +----- 8/jre/alpine/entrypoint.sh | 5 ----- 8/jre/ubi/ubi9-minimal/entrypoint.sh | 5 ----- 8/jre/ubuntu/focal/entrypoint.sh | 5 ----- 8/jre/ubuntu/jammy/entrypoint.sh | 5 ----- 8/jre/ubuntu/noble/entrypoint.sh | 5 ----- docker_templates/entrypoint.sh.j2 | 10 +++++----- generate_dockerfiles.py | 2 ++ 48 files changed, 12 insertions(+), 235 deletions(-) diff --git a/11/jdk/alpine/entrypoint.sh b/11/jdk/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/11/jdk/alpine/entrypoint.sh +++ b/11/jdk/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jdk/ubi/ubi9-minimal/entrypoint.sh b/11/jdk/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/11/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jdk/ubuntu/focal/entrypoint.sh b/11/jdk/ubuntu/focal/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jdk/ubuntu/focal/entrypoint.sh +++ b/11/jdk/ubuntu/focal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jdk/ubuntu/jammy/entrypoint.sh b/11/jdk/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jdk/ubuntu/jammy/entrypoint.sh +++ b/11/jdk/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jdk/ubuntu/noble/entrypoint.sh b/11/jdk/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jdk/ubuntu/noble/entrypoint.sh +++ b/11/jdk/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jre/alpine/entrypoint.sh b/11/jre/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/11/jre/alpine/entrypoint.sh +++ b/11/jre/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jre/ubi/ubi9-minimal/entrypoint.sh b/11/jre/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/11/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/11/jre/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jre/ubuntu/focal/entrypoint.sh b/11/jre/ubuntu/focal/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jre/ubuntu/focal/entrypoint.sh +++ b/11/jre/ubuntu/focal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jre/ubuntu/jammy/entrypoint.sh b/11/jre/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jre/ubuntu/jammy/entrypoint.sh +++ b/11/jre/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/11/jre/ubuntu/noble/entrypoint.sh b/11/jre/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/11/jre/ubuntu/noble/entrypoint.sh +++ b/11/jre/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jdk/alpine/entrypoint.sh b/17/jdk/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/17/jdk/alpine/entrypoint.sh +++ b/17/jdk/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jdk/ubi/ubi9-minimal/entrypoint.sh b/17/jdk/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/17/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jdk/ubuntu/focal/entrypoint.sh b/17/jdk/ubuntu/focal/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jdk/ubuntu/focal/entrypoint.sh +++ b/17/jdk/ubuntu/focal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jdk/ubuntu/jammy/entrypoint.sh b/17/jdk/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jdk/ubuntu/jammy/entrypoint.sh +++ b/17/jdk/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jdk/ubuntu/noble/entrypoint.sh b/17/jdk/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jdk/ubuntu/noble/entrypoint.sh +++ b/17/jdk/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jre/alpine/entrypoint.sh b/17/jre/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/17/jre/alpine/entrypoint.sh +++ b/17/jre/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jre/ubi/ubi9-minimal/entrypoint.sh b/17/jre/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/17/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/17/jre/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jre/ubuntu/focal/entrypoint.sh b/17/jre/ubuntu/focal/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jre/ubuntu/focal/entrypoint.sh +++ b/17/jre/ubuntu/focal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jre/ubuntu/jammy/entrypoint.sh b/17/jre/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jre/ubuntu/jammy/entrypoint.sh +++ b/17/jre/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/17/jre/ubuntu/noble/entrypoint.sh b/17/jre/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/17/jre/ubuntu/noble/entrypoint.sh +++ b/17/jre/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jdk/alpine/entrypoint.sh b/21/jdk/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/21/jdk/alpine/entrypoint.sh +++ b/21/jdk/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jdk/ubi/ubi9-minimal/entrypoint.sh b/21/jdk/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/21/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jdk/ubuntu/jammy/entrypoint.sh b/21/jdk/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/21/jdk/ubuntu/jammy/entrypoint.sh +++ b/21/jdk/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jdk/ubuntu/noble/entrypoint.sh b/21/jdk/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/21/jdk/ubuntu/noble/entrypoint.sh +++ b/21/jdk/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jre/alpine/entrypoint.sh b/21/jre/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/21/jre/alpine/entrypoint.sh +++ b/21/jre/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jre/ubi/ubi9-minimal/entrypoint.sh b/21/jre/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/21/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/21/jre/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jre/ubuntu/jammy/entrypoint.sh b/21/jre/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/21/jre/ubuntu/jammy/entrypoint.sh +++ b/21/jre/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/21/jre/ubuntu/noble/entrypoint.sh b/21/jre/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/21/jre/ubuntu/noble/entrypoint.sh +++ b/21/jre/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jdk/alpine/entrypoint.sh b/22/jdk/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/22/jdk/alpine/entrypoint.sh +++ b/22/jdk/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jdk/ubi/ubi9-minimal/entrypoint.sh b/22/jdk/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/22/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jdk/ubuntu/jammy/entrypoint.sh b/22/jdk/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/22/jdk/ubuntu/jammy/entrypoint.sh +++ b/22/jdk/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jdk/ubuntu/noble/entrypoint.sh b/22/jdk/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/22/jdk/ubuntu/noble/entrypoint.sh +++ b/22/jdk/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jre/alpine/entrypoint.sh b/22/jre/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/22/jre/alpine/entrypoint.sh +++ b/22/jre/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jre/ubi/ubi9-minimal/entrypoint.sh b/22/jre/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/22/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/22/jre/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jre/ubuntu/jammy/entrypoint.sh b/22/jre/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/22/jre/ubuntu/jammy/entrypoint.sh +++ b/22/jre/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/22/jre/ubuntu/noble/entrypoint.sh b/22/jre/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/22/jre/ubuntu/noble/entrypoint.sh +++ b/22/jre/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jdk/alpine/entrypoint.sh b/8/jdk/alpine/entrypoint.sh index c3f02618e..25253b7d2 100755 --- a/8/jdk/alpine/entrypoint.sh +++ b/8/jdk/alpine/entrypoint.sh @@ -26,12 +26,8 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jdk/ubi/ubi9-minimal/entrypoint.sh b/8/jdk/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..9e4443332 100755 --- a/8/jdk/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jdk/ubi/ubi9-minimal/entrypoint.sh @@ -26,12 +26,8 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jdk/ubuntu/focal/entrypoint.sh b/8/jdk/ubuntu/focal/entrypoint.sh index 2d2040468..129e5cccb 100755 --- a/8/jdk/ubuntu/focal/entrypoint.sh +++ b/8/jdk/ubuntu/focal/entrypoint.sh @@ -26,12 +26,8 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jdk/ubuntu/jammy/entrypoint.sh b/8/jdk/ubuntu/jammy/entrypoint.sh index 2d2040468..129e5cccb 100755 --- a/8/jdk/ubuntu/jammy/entrypoint.sh +++ b/8/jdk/ubuntu/jammy/entrypoint.sh @@ -26,12 +26,8 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jdk/ubuntu/noble/entrypoint.sh b/8/jdk/ubuntu/noble/entrypoint.sh index 2d2040468..129e5cccb 100755 --- a/8/jdk/ubuntu/noble/entrypoint.sh +++ b/8/jdk/ubuntu/noble/entrypoint.sh @@ -26,12 +26,8 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jre/alpine/entrypoint.sh b/8/jre/alpine/entrypoint.sh index c3f02618e..306dd4c34 100755 --- a/8/jre/alpine/entrypoint.sh +++ b/8/jre/alpine/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jre/ubi/ubi9-minimal/entrypoint.sh b/8/jre/ubi/ubi9-minimal/entrypoint.sh index 09be1167d..c00c03280 100755 --- a/8/jre/ubi/ubi9-minimal/entrypoint.sh +++ b/8/jre/ubi/ubi9-minimal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jre/ubuntu/focal/entrypoint.sh b/8/jre/ubuntu/focal/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/8/jre/ubuntu/focal/entrypoint.sh +++ b/8/jre/ubuntu/focal/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jre/ubuntu/jammy/entrypoint.sh b/8/jre/ubuntu/jammy/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/8/jre/ubuntu/jammy/entrypoint.sh +++ b/8/jre/ubuntu/jammy/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/8/jre/ubuntu/noble/entrypoint.sh b/8/jre/ubuntu/noble/entrypoint.sh index 2d2040468..d51059c11 100755 --- a/8/jre/ubuntu/noble/entrypoint.sh +++ b/8/jre/ubuntu/noble/entrypoint.sh @@ -28,11 +28,6 @@ TMPDIR=${TMPDIR:-/tmp} # JDK truststore location JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts -# JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi - # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/docker_templates/entrypoint.sh.j2 b/docker_templates/entrypoint.sh.j2 index 4e4baac20..6825f5a9e 100755 --- a/docker_templates/entrypoint.sh.j2 +++ b/docker_templates/entrypoint.sh.j2 @@ -13,12 +13,12 @@ set -e TMPDIR=${TMPDIR:-/tmp} # JDK truststore location -JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts - +{%- if version|int == 8 and image_type == "jdk" %} # JDK8 puts its JRE in a subdirectory -if [ -f "$JAVA_HOME/jre/lib/security/cacerts" ]; then - JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts -fi +JRE_CACERTS_PATH=$JAVA_HOME/jre/lib/security/cacerts +{%- else %} +JRE_CACERTS_PATH=$JAVA_HOME/lib/security/cacerts +{%- endif %} # Opt-in is only activated if the environment variable is set if [ -n "$USE_SYSTEM_CA_CERTS" ]; then diff --git a/generate_dockerfiles.py b/generate_dockerfiles.py index d4007cd1d..280643bed 100644 --- a/generate_dockerfiles.py +++ b/generate_dockerfiles.py @@ -180,7 +180,9 @@ def archHelper(arch, os_name): template_entrypoint = env.get_template(template_entrypoint_file) entrypoint = template_entrypoint.render( + image_type=image_type, os=os_name, + version=version, ) with open( From 3f6f6422017a57eb9ecd31c479c2300e10e73492 Mon Sep 17 00:00:00 2001 From: "shalk(xiao kun)" Date: Tue, 13 Aug 2024 05:37:49 +0800 Subject: [PATCH 30/35] --chmod support for COPY and ADD (#624) * --chmod support for COPY and ADD Signed-off-by: shalk(xiao kun) * add generated updates * fixup * Update entrypoint.j2 --------- Signed-off-by: shalk(xiao kun) Co-authored-by: George Adams Co-authored-by: George Adams --- 11/jdk/alpine/Dockerfile | 2 +- 11/jdk/alpine/entrypoint.sh | 0 11/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 11/jdk/ubi/ubi9-minimal/entrypoint.sh | 0 11/jdk/ubuntu/focal/Dockerfile | 2 +- 11/jdk/ubuntu/focal/entrypoint.sh | 0 11/jdk/ubuntu/jammy/Dockerfile | 2 +- 11/jdk/ubuntu/jammy/entrypoint.sh | 0 11/jdk/ubuntu/noble/Dockerfile | 2 +- 11/jdk/ubuntu/noble/entrypoint.sh | 0 11/jre/alpine/Dockerfile | 2 +- 11/jre/alpine/entrypoint.sh | 0 11/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 11/jre/ubi/ubi9-minimal/entrypoint.sh | 0 11/jre/ubuntu/focal/Dockerfile | 2 +- 11/jre/ubuntu/focal/entrypoint.sh | 0 11/jre/ubuntu/jammy/Dockerfile | 2 +- 11/jre/ubuntu/jammy/entrypoint.sh | 0 11/jre/ubuntu/noble/Dockerfile | 2 +- 11/jre/ubuntu/noble/entrypoint.sh | 0 17/jdk/alpine/Dockerfile | 2 +- 17/jdk/alpine/entrypoint.sh | 0 17/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 17/jdk/ubi/ubi9-minimal/entrypoint.sh | 0 17/jdk/ubuntu/focal/Dockerfile | 2 +- 17/jdk/ubuntu/focal/entrypoint.sh | 0 17/jdk/ubuntu/jammy/Dockerfile | 2 +- 17/jdk/ubuntu/jammy/entrypoint.sh | 0 17/jdk/ubuntu/noble/Dockerfile | 2 +- 17/jdk/ubuntu/noble/entrypoint.sh | 0 17/jre/alpine/Dockerfile | 2 +- 17/jre/alpine/entrypoint.sh | 0 17/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 17/jre/ubi/ubi9-minimal/entrypoint.sh | 0 17/jre/ubuntu/focal/Dockerfile | 2 +- 17/jre/ubuntu/focal/entrypoint.sh | 0 17/jre/ubuntu/jammy/Dockerfile | 2 +- 17/jre/ubuntu/jammy/entrypoint.sh | 0 17/jre/ubuntu/noble/Dockerfile | 2 +- 17/jre/ubuntu/noble/entrypoint.sh | 0 21/jdk/alpine/Dockerfile | 2 +- 21/jdk/alpine/entrypoint.sh | 0 21/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 21/jdk/ubi/ubi9-minimal/entrypoint.sh | 0 21/jdk/ubuntu/jammy/Dockerfile | 2 +- 21/jdk/ubuntu/jammy/entrypoint.sh | 0 21/jdk/ubuntu/noble/Dockerfile | 2 +- 21/jdk/ubuntu/noble/entrypoint.sh | 0 21/jre/alpine/Dockerfile | 2 +- 21/jre/alpine/entrypoint.sh | 0 21/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 21/jre/ubi/ubi9-minimal/entrypoint.sh | 0 21/jre/ubuntu/jammy/Dockerfile | 2 +- 21/jre/ubuntu/jammy/entrypoint.sh | 0 21/jre/ubuntu/noble/Dockerfile | 2 +- 21/jre/ubuntu/noble/entrypoint.sh | 0 22/jdk/alpine/Dockerfile | 2 +- 22/jdk/alpine/entrypoint.sh | 0 22/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 22/jdk/ubi/ubi9-minimal/entrypoint.sh | 0 22/jdk/ubuntu/jammy/Dockerfile | 2 +- 22/jdk/ubuntu/jammy/entrypoint.sh | 0 22/jdk/ubuntu/noble/Dockerfile | 2 +- 22/jdk/ubuntu/noble/entrypoint.sh | 0 22/jre/alpine/Dockerfile | 2 +- 22/jre/alpine/entrypoint.sh | 0 22/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 22/jre/ubi/ubi9-minimal/entrypoint.sh | 0 22/jre/ubuntu/jammy/Dockerfile | 2 +- 22/jre/ubuntu/jammy/entrypoint.sh | 0 22/jre/ubuntu/noble/Dockerfile | 2 +- 22/jre/ubuntu/noble/entrypoint.sh | 0 8/jdk/alpine/Dockerfile | 2 +- 8/jdk/alpine/entrypoint.sh | 0 8/jdk/ubi/ubi9-minimal/Dockerfile | 2 +- 8/jdk/ubi/ubi9-minimal/entrypoint.sh | 0 8/jdk/ubuntu/focal/Dockerfile | 2 +- 8/jdk/ubuntu/focal/entrypoint.sh | 0 8/jdk/ubuntu/jammy/Dockerfile | 2 +- 8/jdk/ubuntu/jammy/entrypoint.sh | 0 8/jdk/ubuntu/noble/Dockerfile | 2 +- 8/jdk/ubuntu/noble/entrypoint.sh | 0 8/jre/alpine/Dockerfile | 2 +- 8/jre/alpine/entrypoint.sh | 0 8/jre/ubi/ubi9-minimal/Dockerfile | 2 +- 8/jre/ubi/ubi9-minimal/entrypoint.sh | 0 8/jre/ubuntu/focal/Dockerfile | 2 +- 8/jre/ubuntu/focal/entrypoint.sh | 0 8/jre/ubuntu/jammy/Dockerfile | 2 +- 8/jre/ubuntu/jammy/entrypoint.sh | 0 8/jre/ubuntu/noble/Dockerfile | 2 +- 8/jre/ubuntu/noble/entrypoint.sh | 0 docker_templates/alpine-linux.Dockerfile.j2 | 3 +-- docker_templates/partials/entrypoint.j2 | 2 ++ docker_templates/ubi9-minimal.Dockerfile.j2 | 5 ++--- docker_templates/ubuntu.Dockerfile.j2 | 5 ++--- generate_dockerfiles.py | 1 - 97 files changed, 53 insertions(+), 55 deletions(-) mode change 100755 => 100644 11/jdk/alpine/entrypoint.sh mode change 100755 => 100644 11/jdk/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 11/jdk/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 11/jdk/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 11/jdk/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 11/jre/alpine/entrypoint.sh mode change 100755 => 100644 11/jre/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 11/jre/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 11/jre/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 11/jre/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 17/jdk/alpine/entrypoint.sh mode change 100755 => 100644 17/jdk/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 17/jdk/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 17/jdk/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 17/jdk/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 17/jre/alpine/entrypoint.sh mode change 100755 => 100644 17/jre/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 17/jre/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 17/jre/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 17/jre/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 21/jdk/alpine/entrypoint.sh mode change 100755 => 100644 21/jdk/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 21/jdk/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 21/jdk/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 21/jre/alpine/entrypoint.sh mode change 100755 => 100644 21/jre/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 21/jre/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 21/jre/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 22/jdk/alpine/entrypoint.sh mode change 100755 => 100644 22/jdk/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 22/jdk/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 22/jdk/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 22/jre/alpine/entrypoint.sh mode change 100755 => 100644 22/jre/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 22/jre/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 22/jre/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 8/jdk/alpine/entrypoint.sh mode change 100755 => 100644 8/jdk/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 8/jdk/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 8/jdk/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 8/jdk/ubuntu/noble/entrypoint.sh mode change 100755 => 100644 8/jre/alpine/entrypoint.sh mode change 100755 => 100644 8/jre/ubi/ubi9-minimal/entrypoint.sh mode change 100755 => 100644 8/jre/ubuntu/focal/entrypoint.sh mode change 100755 => 100644 8/jre/ubuntu/jammy/entrypoint.sh mode change 100755 => 100644 8/jre/ubuntu/noble/entrypoint.sh create mode 100644 docker_templates/partials/entrypoint.j2 diff --git a/11/jdk/alpine/Dockerfile b/11/jdk/alpine/Dockerfile index 6b2dc1b78..11d17051e 100644 --- a/11/jdk/alpine/Dockerfile +++ b/11/jdk/alpine/Dockerfile @@ -76,7 +76,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/alpine/entrypoint.sh b/11/jdk/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index 736333018..19234f36e 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -87,7 +87,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubi/ubi9-minimal/entrypoint.sh b/11/jdk/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index 7785724f2..26a8d4afe 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -99,7 +99,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/focal/entrypoint.sh b/11/jdk/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index b32ecab9b..07c450d4f 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -99,7 +99,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/jammy/entrypoint.sh b/11/jdk/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index dc0797cca..a79c18167 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -99,7 +99,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/11/jdk/ubuntu/noble/entrypoint.sh b/11/jdk/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jre/alpine/Dockerfile b/11/jre/alpine/Dockerfile index f5254041e..00d988f60 100644 --- a/11/jre/alpine/Dockerfile +++ b/11/jre/alpine/Dockerfile @@ -74,5 +74,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/alpine/entrypoint.sh b/11/jre/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 25a03b51c..0901c8c5b 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -85,5 +85,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubi/ubi9-minimal/entrypoint.sh b/11/jre/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index e55c6226a..116018fbf 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/focal/entrypoint.sh b/11/jre/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index 1438bd97d..aa84b521e 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/jammy/entrypoint.sh b/11/jre/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index e1ecfaed3..5227d1de0 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/11/jre/ubuntu/noble/entrypoint.sh b/11/jre/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jdk/alpine/Dockerfile b/17/jdk/alpine/Dockerfile index b9a1fad7c..0159107d6 100644 --- a/17/jdk/alpine/Dockerfile +++ b/17/jdk/alpine/Dockerfile @@ -79,7 +79,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/alpine/entrypoint.sh b/17/jdk/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index f084a7057..6455b4687 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -87,7 +87,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubi/ubi9-minimal/entrypoint.sh b/17/jdk/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index dfcfd223f..d5badb55d 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -102,7 +102,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/focal/entrypoint.sh b/17/jdk/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index 132a94f11..f8b8fc4a2 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -102,7 +102,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/jammy/entrypoint.sh b/17/jdk/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index f9ef5f4a0..e2b2ec686 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -102,7 +102,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/17/jdk/ubuntu/noble/entrypoint.sh b/17/jdk/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jre/alpine/Dockerfile b/17/jre/alpine/Dockerfile index 32554041b..0567846f6 100644 --- a/17/jre/alpine/Dockerfile +++ b/17/jre/alpine/Dockerfile @@ -74,5 +74,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/alpine/entrypoint.sh b/17/jre/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index 9ccc76d3a..d81a19e9e 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -85,5 +85,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubi/ubi9-minimal/entrypoint.sh b/17/jre/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index 2f9f36f23..ca9a85d61 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/focal/entrypoint.sh b/17/jre/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index b2598c80e..a50ecdce3 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/jammy/entrypoint.sh b/17/jre/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index 9cb7a195c..79aaede64 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -97,5 +97,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/17/jre/ubuntu/noble/entrypoint.sh b/17/jre/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jdk/alpine/Dockerfile b/21/jdk/alpine/Dockerfile index 01bae8796..0eda9711f 100644 --- a/21/jdk/alpine/Dockerfile +++ b/21/jdk/alpine/Dockerfile @@ -83,7 +83,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/alpine/entrypoint.sh b/21/jdk/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 375f97d2e..304e48645 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -87,7 +87,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubi/ubi9-minimal/entrypoint.sh b/21/jdk/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index 133239fbc..a900185fe 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -98,7 +98,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/jammy/entrypoint.sh b/21/jdk/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index 5aae3ad2d..c83c20c41 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -98,7 +98,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/21/jdk/ubuntu/noble/entrypoint.sh b/21/jdk/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jre/alpine/Dockerfile b/21/jre/alpine/Dockerfile index 52799021d..4f70ba01c 100644 --- a/21/jre/alpine/Dockerfile +++ b/21/jre/alpine/Dockerfile @@ -78,5 +78,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/alpine/entrypoint.sh b/21/jre/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index d14d86656..06e96608e 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -85,5 +85,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/ubi/ubi9-minimal/entrypoint.sh b/21/jre/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index a7d00900f..71eab15a2 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -93,5 +93,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/jammy/entrypoint.sh b/21/jre/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index f8b6ac128..2e99f5145 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -93,5 +93,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/21/jre/ubuntu/noble/entrypoint.sh b/21/jre/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jdk/alpine/Dockerfile b/22/jdk/alpine/Dockerfile index 5b20df4d8..288193937 100644 --- a/22/jdk/alpine/Dockerfile +++ b/22/jdk/alpine/Dockerfile @@ -83,7 +83,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/alpine/entrypoint.sh b/22/jdk/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index fa33c10fa..3f1176658 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -87,7 +87,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubi/ubi9-minimal/entrypoint.sh b/22/jdk/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index ec0f33034..d29358fe9 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -96,7 +96,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/jammy/entrypoint.sh b/22/jdk/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 39fce803e..1927ebd54 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -96,7 +96,7 @@ RUN set -eux; \ echo "javac --version"; javac --version; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] CMD ["jshell"] diff --git a/22/jdk/ubuntu/noble/entrypoint.sh b/22/jdk/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jre/alpine/Dockerfile b/22/jre/alpine/Dockerfile index f27a32121..33fcb801e 100644 --- a/22/jre/alpine/Dockerfile +++ b/22/jre/alpine/Dockerfile @@ -78,5 +78,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/alpine/entrypoint.sh b/22/jre/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index da209dcac..f65eecaf1 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -85,5 +85,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/ubi/ubi9-minimal/entrypoint.sh b/22/jre/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index 46e2cbadd..de9e9f102 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -91,5 +91,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/jammy/entrypoint.sh b/22/jre/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index 1bda68aa5..c097d5e53 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -91,5 +91,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java --version"; java --version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/22/jre/ubuntu/noble/entrypoint.sh b/22/jre/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jdk/alpine/Dockerfile b/8/jdk/alpine/Dockerfile index 0c5489763..8064687ab 100644 --- a/8/jdk/alpine/Dockerfile +++ b/8/jdk/alpine/Dockerfile @@ -75,5 +75,5 @@ RUN set -eux; \ echo "javac -version"; javac -version; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/alpine/entrypoint.sh b/8/jdk/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index 47229398d..e6ba1d81a 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -82,5 +82,5 @@ RUN set -eux; \ echo "javac -version"; javac -version; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubi/ubi9-minimal/entrypoint.sh b/8/jdk/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index ff1850935..3e926ec3c 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -95,5 +95,5 @@ RUN set -eux; \ echo "javac -version"; javac -version; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/focal/entrypoint.sh b/8/jdk/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index c6f272a92..0257bc97f 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -95,5 +95,5 @@ RUN set -eux; \ echo "javac -version"; javac -version; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/jammy/entrypoint.sh b/8/jdk/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 59ea675c2..3c07738f8 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -95,5 +95,5 @@ RUN set -eux; \ echo "javac -version"; javac -version; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jdk/ubuntu/noble/entrypoint.sh b/8/jdk/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jre/alpine/Dockerfile b/8/jre/alpine/Dockerfile index c25b62992..d21952e62 100644 --- a/8/jre/alpine/Dockerfile +++ b/8/jre/alpine/Dockerfile @@ -74,5 +74,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/alpine/entrypoint.sh b/8/jre/alpine/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index 2724e6d6b..c1dfab894 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -81,5 +81,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubi/ubi9-minimal/entrypoint.sh b/8/jre/ubi/ubi9-minimal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index 83c57b899..f60c8af7d 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -94,5 +94,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/focal/entrypoint.sh b/8/jre/ubuntu/focal/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 1ae8f2c2a..2955bb3cb 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -94,5 +94,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/jammy/entrypoint.sh b/8/jre/ubuntu/jammy/entrypoint.sh old mode 100755 new mode 100644 diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index e97bf7008..4ab3b8c26 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -94,5 +94,5 @@ RUN set -eux; \ echo "Verifying install ..."; \ echo "java -version"; java -version; \ echo "Complete." -COPY entrypoint.sh /__cacert_entrypoint.sh +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/8/jre/ubuntu/noble/entrypoint.sh b/8/jre/ubuntu/noble/entrypoint.sh old mode 100755 new mode 100644 diff --git a/docker_templates/alpine-linux.Dockerfile.j2 b/docker_templates/alpine-linux.Dockerfile.j2 index 41d379279..81d127479 100644 --- a/docker_templates/alpine-linux.Dockerfile.j2 +++ b/docker_templates/alpine-linux.Dockerfile.j2 @@ -30,6 +30,5 @@ ENV JAVA_VERSION {{ java_version }} {% include 'partials/multi-arch-install.j2' %} {% include 'partials/version-check.j2' %} -COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] +{% include 'partials/entrypoint.j2' %} {% include 'partials/jshell.j2' %} diff --git a/docker_templates/partials/entrypoint.j2 b/docker_templates/partials/entrypoint.j2 new file mode 100644 index 000000000..ff1f83e9b --- /dev/null +++ b/docker_templates/partials/entrypoint.j2 @@ -0,0 +1,2 @@ +COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh +ENTRYPOINT ["/__cacert_entrypoint.sh"] diff --git a/docker_templates/ubi9-minimal.Dockerfile.j2 b/docker_templates/ubi9-minimal.Dockerfile.j2 index c8680184d..05e6ff267 100644 --- a/docker_templates/ubi9-minimal.Dockerfile.j2 +++ b/docker_templates/ubi9-minimal.Dockerfile.j2 @@ -28,6 +28,5 @@ ENV JAVA_VERSION {{ java_version }} {% include 'partials/multi-arch-install.j2' %} {% include 'partials/version-check.j2' %} -COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] -{% include 'partials/jshell.j2' %} \ No newline at end of file +{% include 'partials/entrypoint.j2' %} +{% include 'partials/jshell.j2' %} diff --git a/docker_templates/ubuntu.Dockerfile.j2 b/docker_templates/ubuntu.Dockerfile.j2 index 05dac147a..81f164455 100644 --- a/docker_templates/ubuntu.Dockerfile.j2 +++ b/docker_templates/ubuntu.Dockerfile.j2 @@ -42,6 +42,5 @@ ENV JAVA_VERSION {{ java_version }} ldconfig; {% endif %} {% include 'partials/version-check.j2' %} -COPY entrypoint.sh /__cacert_entrypoint.sh -ENTRYPOINT ["/__cacert_entrypoint.sh"] -{% include 'partials/jshell.j2' %} \ No newline at end of file +{% include 'partials/entrypoint.j2' %} +{% include 'partials/jshell.j2' %} diff --git a/generate_dockerfiles.py b/generate_dockerfiles.py index 280643bed..4576050dd 100644 --- a/generate_dockerfiles.py +++ b/generate_dockerfiles.py @@ -189,6 +189,5 @@ def archHelper(arch, os_name): os.path.join(output_directory, "entrypoint.sh"), "w" ) as out_file: out_file.write(entrypoint) - os.chmod(os.path.join(output_directory, "entrypoint.sh"), 0o755) print("Dockerfiles generated successfully!") From 0327d46f70b892afeaa402a97507a1b103fb84f7 Mon Sep 17 00:00:00 2001 From: George Adams Date: Tue, 13 Aug 2024 09:29:42 +0100 Subject: [PATCH 31/35] remove legacy ENV variables (#628) * remove legacy ENV variables * fix doc generator * simplify --- 11/jdk/alpine/Dockerfile | 6 +++--- 11/jdk/ubi/ubi9-minimal/Dockerfile | 6 +++--- 11/jdk/ubuntu/focal/Dockerfile | 6 +++--- 11/jdk/ubuntu/jammy/Dockerfile | 6 +++--- 11/jdk/ubuntu/noble/Dockerfile | 6 +++--- 11/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 11/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 11/jdk/windows/windowsservercore-1809/Dockerfile | 2 +- 11/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 11/jre/alpine/Dockerfile | 6 +++--- 11/jre/ubi/ubi9-minimal/Dockerfile | 6 +++--- 11/jre/ubuntu/focal/Dockerfile | 6 +++--- 11/jre/ubuntu/jammy/Dockerfile | 6 +++--- 11/jre/ubuntu/noble/Dockerfile | 6 +++--- 11/jre/windows/nanoserver-1809/Dockerfile | 2 +- 11/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 11/jre/windows/windowsservercore-1809/Dockerfile | 2 +- 11/jre/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 17/jdk/alpine/Dockerfile | 6 +++--- 17/jdk/ubi/ubi9-minimal/Dockerfile | 6 +++--- 17/jdk/ubuntu/focal/Dockerfile | 6 +++--- 17/jdk/ubuntu/jammy/Dockerfile | 6 +++--- 17/jdk/ubuntu/noble/Dockerfile | 6 +++--- 17/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 17/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 17/jdk/windows/windowsservercore-1809/Dockerfile | 2 +- 17/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 17/jre/alpine/Dockerfile | 6 +++--- 17/jre/ubi/ubi9-minimal/Dockerfile | 6 +++--- 17/jre/ubuntu/focal/Dockerfile | 6 +++--- 17/jre/ubuntu/jammy/Dockerfile | 6 +++--- 17/jre/ubuntu/noble/Dockerfile | 6 +++--- 17/jre/windows/nanoserver-1809/Dockerfile | 2 +- 17/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 17/jre/windows/windowsservercore-1809/Dockerfile | 2 +- 17/jre/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 21/jdk/alpine/Dockerfile | 6 +++--- 21/jdk/ubi/ubi9-minimal/Dockerfile | 6 +++--- 21/jdk/ubuntu/jammy/Dockerfile | 6 +++--- 21/jdk/ubuntu/noble/Dockerfile | 6 +++--- 21/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 21/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 21/jdk/windows/windowsservercore-1809/Dockerfile | 2 +- 21/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 21/jre/alpine/Dockerfile | 6 +++--- 21/jre/ubi/ubi9-minimal/Dockerfile | 6 +++--- 21/jre/ubuntu/jammy/Dockerfile | 6 +++--- 21/jre/ubuntu/noble/Dockerfile | 6 +++--- 21/jre/windows/nanoserver-1809/Dockerfile | 2 +- 21/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 21/jre/windows/windowsservercore-1809/Dockerfile | 2 +- 21/jre/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 22/jdk/alpine/Dockerfile | 6 +++--- 22/jdk/ubi/ubi9-minimal/Dockerfile | 6 +++--- 22/jdk/ubuntu/jammy/Dockerfile | 6 +++--- 22/jdk/ubuntu/noble/Dockerfile | 6 +++--- 22/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 22/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 22/jdk/windows/windowsservercore-1809/Dockerfile | 2 +- 22/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 22/jre/alpine/Dockerfile | 6 +++--- 22/jre/ubi/ubi9-minimal/Dockerfile | 6 +++--- 22/jre/ubuntu/jammy/Dockerfile | 6 +++--- 22/jre/ubuntu/noble/Dockerfile | 6 +++--- 22/jre/windows/nanoserver-1809/Dockerfile | 2 +- 22/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 22/jre/windows/windowsservercore-1809/Dockerfile | 2 +- 22/jre/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 8/jdk/alpine/Dockerfile | 6 +++--- 8/jdk/ubi/ubi9-minimal/Dockerfile | 6 +++--- 8/jdk/ubuntu/focal/Dockerfile | 6 +++--- 8/jdk/ubuntu/jammy/Dockerfile | 6 +++--- 8/jdk/ubuntu/noble/Dockerfile | 6 +++--- 8/jdk/windows/nanoserver-1809/Dockerfile | 2 +- 8/jdk/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 8/jdk/windows/windowsservercore-1809/Dockerfile | 2 +- 8/jdk/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- 8/jre/alpine/Dockerfile | 6 +++--- 8/jre/ubi/ubi9-minimal/Dockerfile | 6 +++--- 8/jre/ubuntu/focal/Dockerfile | 6 +++--- 8/jre/ubuntu/jammy/Dockerfile | 6 +++--- 8/jre/ubuntu/noble/Dockerfile | 6 +++--- 8/jre/windows/nanoserver-1809/Dockerfile | 2 +- 8/jre/windows/nanoserver-ltsc2022/Dockerfile | 2 +- 8/jre/windows/windowsservercore-1809/Dockerfile | 2 +- 8/jre/windows/windowsservercore-ltsc2022/Dockerfile | 2 +- docker_templates/alpine-linux.Dockerfile.j2 | 2 +- docker_templates/nanoserver.Dockerfile.j2 | 2 +- docker_templates/partials/java-version.j2 | 1 + docker_templates/partials/nix-env.j2 | 4 ++-- docker_templates/servercore.Dockerfile.j2 | 2 +- docker_templates/ubi9-minimal.Dockerfile.j2 | 2 +- docker_templates/ubuntu.Dockerfile.j2 | 2 +- dockerhub_doc_config_update.sh | 2 +- 94 files changed, 187 insertions(+), 186 deletions(-) create mode 100644 docker_templates/partials/java-version.j2 diff --git a/11/jdk/alpine/Dockerfile b/11/jdk/alpine/Dockerfile index 11d17051e..27e8199c7 100644 --- a/11/jdk/alpine/Dockerfile +++ b/11/jdk/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/11/jdk/ubi/ubi9-minimal/Dockerfile b/11/jdk/ubi/ubi9-minimal/Dockerfile index 19234f36e..0f15df108 100644 --- a/11/jdk/ubi/ubi9-minimal/Dockerfile +++ b/11/jdk/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/11/jdk/ubuntu/focal/Dockerfile b/11/jdk/ubuntu/focal/Dockerfile index 26a8d4afe..74465eca0 100644 --- a/11/jdk/ubuntu/focal/Dockerfile +++ b/11/jdk/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jdk/ubuntu/jammy/Dockerfile b/11/jdk/ubuntu/jammy/Dockerfile index 07c450d4f..d0ec5629f 100644 --- a/11/jdk/ubuntu/jammy/Dockerfile +++ b/11/jdk/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jdk/ubuntu/noble/Dockerfile b/11/jdk/ubuntu/noble/Dockerfile index a79c18167..7e5d440b6 100644 --- a/11/jdk/ubuntu/noble/Dockerfile +++ b/11/jdk/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jdk/windows/nanoserver-1809/Dockerfile b/11/jdk/windows/nanoserver-1809/Dockerfile index 4b08d43a5..d0f9578c3 100644 --- a/11/jdk/windows/nanoserver-1809/Dockerfile +++ b/11/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." diff --git a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile index c50508130..68ed2b16b 100644 --- a/11/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." diff --git a/11/jdk/windows/windowsservercore-1809/Dockerfile b/11/jdk/windows/windowsservercore-1809/Dockerfile index 0cde96461..707c52573 100644 --- a/11/jdk/windows/windowsservercore-1809/Dockerfile +++ b/11/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ; \ diff --git a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 75cf96a7e..e21fbf875 100644 --- a/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jdk_x64_windows_hotspot_11.0.24_8.msi ; \ diff --git a/11/jre/alpine/Dockerfile b/11/jre/alpine/Dockerfile index 00d988f60..3b8aa07cb 100644 --- a/11/jre/alpine/Dockerfile +++ b/11/jre/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/11/jre/ubi/ubi9-minimal/Dockerfile b/11/jre/ubi/ubi9-minimal/Dockerfile index 0901c8c5b..0d3549013 100644 --- a/11/jre/ubi/ubi9-minimal/Dockerfile +++ b/11/jre/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/11/jre/ubuntu/focal/Dockerfile b/11/jre/ubuntu/focal/Dockerfile index 116018fbf..45260facb 100644 --- a/11/jre/ubuntu/focal/Dockerfile +++ b/11/jre/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jre/ubuntu/jammy/Dockerfile b/11/jre/ubuntu/jammy/Dockerfile index aa84b521e..cb0babbeb 100644 --- a/11/jre/ubuntu/jammy/Dockerfile +++ b/11/jre/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jre/ubuntu/noble/Dockerfile b/11/jre/ubuntu/noble/Dockerfile index 5227d1de0..79e18b57a 100644 --- a/11/jre/ubuntu/noble/Dockerfile +++ b/11/jre/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/11/jre/windows/nanoserver-1809/Dockerfile b/11/jre/windows/nanoserver-1809/Dockerfile index ebd8f4c6c..14a0961c2 100644 --- a/11/jre/windows/nanoserver-1809/Dockerfile +++ b/11/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." diff --git a/11/jre/windows/nanoserver-ltsc2022/Dockerfile b/11/jre/windows/nanoserver-ltsc2022/Dockerfile index b45eb7ef1..00f5409cd 100644 --- a/11/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/11/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 ENV JAVA_HOME C:\\openjdk-11 # "ERROR: Access to the registry path is denied." diff --git a/11/jre/windows/windowsservercore-1809/Dockerfile b/11/jre/windows/windowsservercore-1809/Dockerfile index 880ee7662..5d04cb2f4 100644 --- a/11/jre/windows/windowsservercore-1809/Dockerfile +++ b/11/jre/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ; \ diff --git a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile index 8b83a3f61..0bfb2acbc 100644 --- a/11/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/11/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-11.0.24+8 +ENV JAVA_VERSION=jdk-11.0.24+8 RUN Write-Host ('Downloading https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.24%2B8/OpenJDK11U-jre_x64_windows_hotspot_11.0.24_8.msi ; \ diff --git a/17/jdk/alpine/Dockerfile b/17/jdk/alpine/Dockerfile index 0159107d6..cd77a10a1 100644 --- a/17/jdk/alpine/Dockerfile +++ b/17/jdk/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -48,7 +48,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/17/jdk/ubi/ubi9-minimal/Dockerfile b/17/jdk/ubi/ubi9-minimal/Dockerfile index 6455b4687..98a559ac9 100644 --- a/17/jdk/ubi/ubi9-minimal/Dockerfile +++ b/17/jdk/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/17/jdk/ubuntu/focal/Dockerfile b/17/jdk/ubuntu/focal/Dockerfile index d5badb55d..03fa063a1 100644 --- a/17/jdk/ubuntu/focal/Dockerfile +++ b/17/jdk/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -49,7 +49,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jdk/ubuntu/jammy/Dockerfile b/17/jdk/ubuntu/jammy/Dockerfile index f8b8fc4a2..8c8bec57e 100644 --- a/17/jdk/ubuntu/jammy/Dockerfile +++ b/17/jdk/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -49,7 +49,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jdk/ubuntu/noble/Dockerfile b/17/jdk/ubuntu/noble/Dockerfile index e2b2ec686..f291d4bee 100644 --- a/17/jdk/ubuntu/noble/Dockerfile +++ b/17/jdk/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -49,7 +49,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jdk/windows/nanoserver-1809/Dockerfile b/17/jdk/windows/nanoserver-1809/Dockerfile index 4f6d21e53..4e86ec4ef 100644 --- a/17/jdk/windows/nanoserver-1809/Dockerfile +++ b/17/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." diff --git a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile index 8d0bfa294..be1c2e278 100644 --- a/17/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." diff --git a/17/jdk/windows/windowsservercore-1809/Dockerfile b/17/jdk/windows/windowsservercore-1809/Dockerfile index 1826e2d59..efdcdc036 100644 --- a/17/jdk/windows/windowsservercore-1809/Dockerfile +++ b/17/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ; \ diff --git a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile index a152fef82..8d98eafd6 100644 --- a/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jdk_x64_windows_hotspot_17.0.12_7.msi ; \ diff --git a/17/jre/alpine/Dockerfile b/17/jre/alpine/Dockerfile index 0567846f6..f0479b51c 100644 --- a/17/jre/alpine/Dockerfile +++ b/17/jre/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/17/jre/ubi/ubi9-minimal/Dockerfile b/17/jre/ubi/ubi9-minimal/Dockerfile index d81a19e9e..8d863131c 100644 --- a/17/jre/ubi/ubi9-minimal/Dockerfile +++ b/17/jre/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/17/jre/ubuntu/focal/Dockerfile b/17/jre/ubuntu/focal/Dockerfile index ca9a85d61..70027ca9e 100644 --- a/17/jre/ubuntu/focal/Dockerfile +++ b/17/jre/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jre/ubuntu/jammy/Dockerfile b/17/jre/ubuntu/jammy/Dockerfile index a50ecdce3..59369575a 100644 --- a/17/jre/ubuntu/jammy/Dockerfile +++ b/17/jre/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jre/ubuntu/noble/Dockerfile b/17/jre/ubuntu/noble/Dockerfile index 79aaede64..700008b12 100644 --- a/17/jre/ubuntu/noble/Dockerfile +++ b/17/jre/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/17/jre/windows/nanoserver-1809/Dockerfile b/17/jre/windows/nanoserver-1809/Dockerfile index 6a7ea9cad..ad4d7502d 100644 --- a/17/jre/windows/nanoserver-1809/Dockerfile +++ b/17/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." diff --git a/17/jre/windows/nanoserver-ltsc2022/Dockerfile b/17/jre/windows/nanoserver-ltsc2022/Dockerfile index 345d14587..30eba22aa 100644 --- a/17/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/17/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 ENV JAVA_HOME C:\\openjdk-17 # "ERROR: Access to the registry path is denied." diff --git a/17/jre/windows/windowsservercore-1809/Dockerfile b/17/jre/windows/windowsservercore-1809/Dockerfile index 25eb6e4a4..da8c3afa5 100644 --- a/17/jre/windows/windowsservercore-1809/Dockerfile +++ b/17/jre/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ; \ diff --git a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile index b2978d704..f6086c28e 100644 --- a/17/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/17/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-17.0.12+7 +ENV JAVA_VERSION=jdk-17.0.12+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.12%2B7/OpenJDK17U-jre_x64_windows_hotspot_17.0.12_7.msi ; \ diff --git a/21/jdk/alpine/Dockerfile b/21/jdk/alpine/Dockerfile index 0eda9711f..c62668a9d 100644 --- a/21/jdk/alpine/Dockerfile +++ b/21/jdk/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -48,7 +48,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/21/jdk/ubi/ubi9-minimal/Dockerfile b/21/jdk/ubi/ubi9-minimal/Dockerfile index 304e48645..2f6562a06 100644 --- a/21/jdk/ubi/ubi9-minimal/Dockerfile +++ b/21/jdk/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/21/jdk/ubuntu/jammy/Dockerfile b/21/jdk/ubuntu/jammy/Dockerfile index a900185fe..061af25e8 100644 --- a/21/jdk/ubuntu/jammy/Dockerfile +++ b/21/jdk/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -49,7 +49,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/21/jdk/ubuntu/noble/Dockerfile b/21/jdk/ubuntu/noble/Dockerfile index c83c20c41..5408fe13b 100644 --- a/21/jdk/ubuntu/noble/Dockerfile +++ b/21/jdk/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -49,7 +49,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/21/jdk/windows/nanoserver-1809/Dockerfile b/21/jdk/windows/nanoserver-1809/Dockerfile index f14440fad..c86f7fb1e 100644 --- a/21/jdk/windows/nanoserver-1809/Dockerfile +++ b/21/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." diff --git a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile index ad58ac7d8..5408206ba 100644 --- a/21/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." diff --git a/21/jdk/windows/windowsservercore-1809/Dockerfile b/21/jdk/windows/windowsservercore-1809/Dockerfile index f645044a9..a02936f60 100644 --- a/21/jdk/windows/windowsservercore-1809/Dockerfile +++ b/21/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ; \ diff --git a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 0b89e1517..a2eb3883f 100644 --- a/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jdk_x64_windows_hotspot_21.0.4_7.msi ; \ diff --git a/21/jre/alpine/Dockerfile b/21/jre/alpine/Dockerfile index 4f70ba01c..ea62602d2 100644 --- a/21/jre/alpine/Dockerfile +++ b/21/jre/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/21/jre/ubi/ubi9-minimal/Dockerfile b/21/jre/ubi/ubi9-minimal/Dockerfile index 06e96608e..f27213f79 100644 --- a/21/jre/ubi/ubi9-minimal/Dockerfile +++ b/21/jre/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/21/jre/ubuntu/jammy/Dockerfile b/21/jre/ubuntu/jammy/Dockerfile index 71eab15a2..1671feaaf 100644 --- a/21/jre/ubuntu/jammy/Dockerfile +++ b/21/jre/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/21/jre/ubuntu/noble/Dockerfile b/21/jre/ubuntu/noble/Dockerfile index 2e99f5145..1ccb0c626 100644 --- a/21/jre/ubuntu/noble/Dockerfile +++ b/21/jre/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/21/jre/windows/nanoserver-1809/Dockerfile b/21/jre/windows/nanoserver-1809/Dockerfile index 849fe8119..b20591f89 100644 --- a/21/jre/windows/nanoserver-1809/Dockerfile +++ b/21/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." diff --git a/21/jre/windows/nanoserver-ltsc2022/Dockerfile b/21/jre/windows/nanoserver-ltsc2022/Dockerfile index 78481dd3c..1c19caae6 100644 --- a/21/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/21/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 ENV JAVA_HOME C:\\openjdk-21 # "ERROR: Access to the registry path is denied." diff --git a/21/jre/windows/windowsservercore-1809/Dockerfile b/21/jre/windows/windowsservercore-1809/Dockerfile index da8e75495..222455d23 100644 --- a/21/jre/windows/windowsservercore-1809/Dockerfile +++ b/21/jre/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ; \ diff --git a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile index 8b03a818b..25cb3afb6 100644 --- a/21/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/21/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-21.0.4+7 +ENV JAVA_VERSION=jdk-21.0.4+7 RUN Write-Host ('Downloading https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.4%2B7/OpenJDK21U-jre_x64_windows_hotspot_21.0.4_7.msi ; \ diff --git a/22/jdk/alpine/Dockerfile b/22/jdk/alpine/Dockerfile index 288193937..2086669c5 100644 --- a/22/jdk/alpine/Dockerfile +++ b/22/jdk/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -48,7 +48,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/22/jdk/ubi/ubi9-minimal/Dockerfile b/22/jdk/ubi/ubi9-minimal/Dockerfile index 3f1176658..ffe29b273 100644 --- a/22/jdk/ubi/ubi9-minimal/Dockerfile +++ b/22/jdk/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/22/jdk/ubuntu/jammy/Dockerfile b/22/jdk/ubuntu/jammy/Dockerfile index d29358fe9..f518473c2 100644 --- a/22/jdk/ubuntu/jammy/Dockerfile +++ b/22/jdk/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -47,7 +47,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/22/jdk/ubuntu/noble/Dockerfile b/22/jdk/ubuntu/noble/Dockerfile index 1927ebd54..2192262ad 100644 --- a/22/jdk/ubuntu/noble/Dockerfile +++ b/22/jdk/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -47,7 +47,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/22/jdk/windows/nanoserver-1809/Dockerfile b/22/jdk/windows/nanoserver-1809/Dockerfile index a5d4e09ba..46c9515dd 100644 --- a/22/jdk/windows/nanoserver-1809/Dockerfile +++ b/22/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." diff --git a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile index 9bb8993c3..36788c34c 100644 --- a/22/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." diff --git a/22/jdk/windows/windowsservercore-1809/Dockerfile b/22/jdk/windows/windowsservercore-1809/Dockerfile index 7aca8f36e..503d25f16 100644 --- a/22/jdk/windows/windowsservercore-1809/Dockerfile +++ b/22/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ; \ diff --git a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile index c5a441539..2ba0b5695 100644 --- a/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jdk_x64_windows_hotspot_22.0.2_9.msi ; \ diff --git a/22/jre/alpine/Dockerfile b/22/jre/alpine/Dockerfile index 33fcb801e..600d752ef 100644 --- a/22/jre/alpine/Dockerfile +++ b/22/jre/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/22/jre/ubi/ubi9-minimal/Dockerfile b/22/jre/ubi/ubi9-minimal/Dockerfile index f65eecaf1..6683f5183 100644 --- a/22/jre/ubi/ubi9-minimal/Dockerfile +++ b/22/jre/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/22/jre/ubuntu/jammy/Dockerfile b/22/jre/ubuntu/jammy/Dockerfile index de9e9f102..16affc3f9 100644 --- a/22/jre/ubuntu/jammy/Dockerfile +++ b/22/jre/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/22/jre/ubuntu/noble/Dockerfile b/22/jre/ubuntu/noble/Dockerfile index c097d5e53..9b9b4fe92 100644 --- a/22/jre/ubuntu/noble/Dockerfile +++ b/22/jre/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/22/jre/windows/nanoserver-1809/Dockerfile b/22/jre/windows/nanoserver-1809/Dockerfile index 22201ab09..08888ab21 100644 --- a/22/jre/windows/nanoserver-1809/Dockerfile +++ b/22/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." diff --git a/22/jre/windows/nanoserver-ltsc2022/Dockerfile b/22/jre/windows/nanoserver-ltsc2022/Dockerfile index 4a8d37113..e704f7396 100644 --- a/22/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/22/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 ENV JAVA_HOME C:\\openjdk-22 # "ERROR: Access to the registry path is denied." diff --git a/22/jre/windows/windowsservercore-1809/Dockerfile b/22/jre/windows/windowsservercore-1809/Dockerfile index 8e6ff35f2..2e9753b40 100644 --- a/22/jre/windows/windowsservercore-1809/Dockerfile +++ b/22/jre/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ; \ diff --git a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile index 9785d07d0..1c993c1c0 100644 --- a/22/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/22/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk-22.0.2+9 +ENV JAVA_VERSION=jdk-22.0.2+9 RUN Write-Host ('Downloading https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin22-binaries/releases/download/jdk-22.0.2%2B9/OpenJDK22U-jre_x64_windows_hotspot_22.0.2_9.msi ; \ diff --git a/8/jdk/alpine/Dockerfile b/8/jdk/alpine/Dockerfile index 8064687ab..649eba723 100644 --- a/8/jdk/alpine/Dockerfile +++ b/8/jdk/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/8/jdk/ubi/ubi9-minimal/Dockerfile b/8/jdk/ubi/ubi9-minimal/Dockerfile index e6ba1d81a..57a87552d 100644 --- a/8/jdk/ubi/ubi9-minimal/Dockerfile +++ b/8/jdk/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/8/jdk/ubuntu/focal/Dockerfile b/8/jdk/ubuntu/focal/Dockerfile index 3e926ec3c..e02ea2686 100644 --- a/8/jdk/ubuntu/focal/Dockerfile +++ b/8/jdk/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jdk/ubuntu/jammy/Dockerfile b/8/jdk/ubuntu/jammy/Dockerfile index 0257bc97f..74ed4321d 100644 --- a/8/jdk/ubuntu/jammy/Dockerfile +++ b/8/jdk/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jdk/ubuntu/noble/Dockerfile b/8/jdk/ubuntu/noble/Dockerfile index 3c07738f8..a9794a129 100644 --- a/8/jdk/ubuntu/noble/Dockerfile +++ b/8/jdk/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jdk/windows/nanoserver-1809/Dockerfile b/8/jdk/windows/nanoserver-1809/Dockerfile index 850540eba..f5069d5ee 100644 --- a/8/jdk/windows/nanoserver-1809/Dockerfile +++ b/8/jdk/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." diff --git a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile index 69424d228..6933b6e79 100644 --- a/8/jdk/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jdk/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." diff --git a/8/jdk/windows/windowsservercore-1809/Dockerfile b/8/jdk/windows/windowsservercore-1809/Dockerfile index 48e9d9b4b..d6feaeb4b 100644 --- a/8/jdk/windows/windowsservercore-1809/Dockerfile +++ b/8/jdk/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ; \ diff --git a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile index 50f75fd22..c4ae0cd7c 100644 --- a/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi ; \ diff --git a/8/jre/alpine/Dockerfile b/8/jre/alpine/Dockerfile index d21952e62..e0daf20ee 100644 --- a/8/jre/alpine/Dockerfile +++ b/8/jre/alpine/Dockerfile @@ -19,8 +19,8 @@ FROM alpine:3.20 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -45,7 +45,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(apk --print-arch)"; \ diff --git a/8/jre/ubi/ubi9-minimal/Dockerfile b/8/jre/ubi/ubi9-minimal/Dockerfile index c1dfab894..ba1941edc 100644 --- a/8/jre/ubi/ubi9-minimal/Dockerfile +++ b/8/jre/ubi/ubi9-minimal/Dockerfile @@ -19,8 +19,8 @@ FROM redhat/ubi9-minimal -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -44,7 +44,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ diff --git a/8/jre/ubuntu/focal/Dockerfile b/8/jre/ubuntu/focal/Dockerfile index f60c8af7d..6e503892a 100644 --- a/8/jre/ubuntu/focal/Dockerfile +++ b/8/jre/ubuntu/focal/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:20.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jre/ubuntu/jammy/Dockerfile b/8/jre/ubuntu/jammy/Dockerfile index 2955bb3cb..e2a00c83f 100644 --- a/8/jre/ubuntu/jammy/Dockerfile +++ b/8/jre/ubuntu/jammy/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:22.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jre/ubuntu/noble/Dockerfile b/8/jre/ubuntu/noble/Dockerfile index 4ab3b8c26..b068a2478 100644 --- a/8/jre/ubuntu/noble/Dockerfile +++ b/8/jre/ubuntu/noble/Dockerfile @@ -19,8 +19,8 @@ FROM ubuntu:24.04 -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' @@ -46,7 +46,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN set -eux; \ ARCH="$(dpkg --print-architecture)"; \ diff --git a/8/jre/windows/nanoserver-1809/Dockerfile b/8/jre/windows/nanoserver-1809/Dockerfile index 958458754..beeb0644d 100644 --- a/8/jre/windows/nanoserver-1809/Dockerfile +++ b/8/jre/windows/nanoserver-1809/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:1809 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." diff --git a/8/jre/windows/nanoserver-ltsc2022/Dockerfile b/8/jre/windows/nanoserver-ltsc2022/Dockerfile index dd1f96704..9ea4aa23b 100644 --- a/8/jre/windows/nanoserver-ltsc2022/Dockerfile +++ b/8/jre/windows/nanoserver-ltsc2022/Dockerfile @@ -21,7 +21,7 @@ FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 ENV JAVA_HOME C:\\openjdk-8 # "ERROR: Access to the registry path is denied." diff --git a/8/jre/windows/windowsservercore-1809/Dockerfile b/8/jre/windows/windowsservercore-1809/Dockerfile index e7dc705ca..93c4c4f41 100644 --- a/8/jre/windows/windowsservercore-1809/Dockerfile +++ b/8/jre/windows/windowsservercore-1809/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:1809 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ; \ diff --git a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile index a8a82d8ea..096ccd558 100644 --- a/8/jre/windows/windowsservercore-ltsc2022/Dockerfile +++ b/8/jre/windows/windowsservercore-ltsc2022/Dockerfile @@ -22,7 +22,7 @@ FROM mcr.microsoft.com/windows/servercore:ltsc2022 # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION jdk8u422-b05 +ENV JAVA_VERSION=jdk8u422-b05 RUN Write-Host ('Downloading https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ...'); \ curl.exe -LfsSo openjdk.msi https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u422-b05/OpenJDK8U-jre_x64_windows_hotspot_8u422b05.msi ; \ diff --git a/docker_templates/alpine-linux.Dockerfile.j2 b/docker_templates/alpine-linux.Dockerfile.j2 index 81d127479..816c4a690 100644 --- a/docker_templates/alpine-linux.Dockerfile.j2 +++ b/docker_templates/alpine-linux.Dockerfile.j2 @@ -25,7 +25,7 @@ RUN set -eux; \ ; \ rm -rf /var/cache/apk/* -ENV JAVA_VERSION {{ java_version }} +{% include 'partials/java-version.j2' %} {% include 'partials/multi-arch-install.j2' %} diff --git a/docker_templates/nanoserver.Dockerfile.j2 b/docker_templates/nanoserver.Dockerfile.j2 index 7341568bc..15a10abb5 100644 --- a/docker_templates/nanoserver.Dockerfile.j2 +++ b/docker_templates/nanoserver.Dockerfile.j2 @@ -4,7 +4,7 @@ FROM {{ base_image }} SHELL ["cmd", "/s", "/c"] -ENV JAVA_VERSION {{ java_version }} +{% include 'partials/java-version.j2' %} ENV JAVA_HOME C:\\openjdk-{{ version }} # "ERROR: Access to the registry path is denied." diff --git a/docker_templates/partials/java-version.j2 b/docker_templates/partials/java-version.j2 new file mode 100644 index 000000000..8f66e6acd --- /dev/null +++ b/docker_templates/partials/java-version.j2 @@ -0,0 +1 @@ +ENV JAVA_VERSION={{ java_version }} \ No newline at end of file diff --git a/docker_templates/partials/nix-env.j2 b/docker_templates/partials/nix-env.j2 index 3a8a7e247..0d19c9841 100644 --- a/docker_templates/partials/nix-env.j2 +++ b/docker_templates/partials/nix-env.j2 @@ -1,5 +1,5 @@ -ENV JAVA_HOME /opt/java/openjdk -ENV PATH $JAVA_HOME/bin:$PATH +ENV JAVA_HOME=/opt/java/openjdk +ENV PATH=$JAVA_HOME/bin:$PATH # Default to UTF-8 file.encoding ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8' diff --git a/docker_templates/servercore.Dockerfile.j2 b/docker_templates/servercore.Dockerfile.j2 index 45d0e6d83..56521ab75 100644 --- a/docker_templates/servercore.Dockerfile.j2 +++ b/docker_templates/servercore.Dockerfile.j2 @@ -5,7 +5,7 @@ FROM {{ base_image }} # $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ENV JAVA_VERSION {{ java_version }} +{% include 'partials/java-version.j2' %} RUN Write-Host ('Downloading {{ arch_data.download_url }} ...'); \ curl.exe -LfsSo openjdk.msi {{ arch_data.download_url }} ; \ diff --git a/docker_templates/ubi9-minimal.Dockerfile.j2 b/docker_templates/ubi9-minimal.Dockerfile.j2 index 05e6ff267..2abba479b 100644 --- a/docker_templates/ubi9-minimal.Dockerfile.j2 +++ b/docker_templates/ubi9-minimal.Dockerfile.j2 @@ -23,7 +23,7 @@ RUN set -eux; \ ; \ microdnf clean all -ENV JAVA_VERSION {{ java_version }} +{% include 'partials/java-version.j2' %} {% include 'partials/multi-arch-install.j2' %} diff --git a/docker_templates/ubuntu.Dockerfile.j2 b/docker_templates/ubuntu.Dockerfile.j2 index 81f164455..68534423b 100644 --- a/docker_templates/ubuntu.Dockerfile.j2 +++ b/docker_templates/ubuntu.Dockerfile.j2 @@ -28,7 +28,7 @@ RUN set -eux; \ locale-gen en_US.UTF-8; \ rm -rf /var/lib/apt/lists/* -ENV JAVA_VERSION {{ java_version }} +{% include 'partials/java-version.j2' %} {% include 'partials/multi-arch-install.j2' %} \ # https://github.com/docker-library/openjdk/issues/331#issuecomment-498834472 diff --git a/dockerhub_doc_config_update.sh b/dockerhub_doc_config_update.sh index 1f63a91e0..60f7044ef 100755 --- a/dockerhub_doc_config_update.sh +++ b/dockerhub_doc_config_update.sh @@ -63,7 +63,7 @@ print_official_header() { function generate_official_image_tags() { # Generate the tags - full_version=$(grep "VERSION" "${file}" | awk '{ print $3 }') + full_version=$(grep "JAVA_VERSION=" "${file}" | awk -F '=' '{ print $2 }') # Remove any `jdk` references in the version ojdk_version=$(echo "${full_version}" | sed 's/\(jdk-\)//;s/\(jdk\)//' | awk -F '_' '{ print $1 }') From f56f55b60b71365e19fb25b00f3143350e9bf9cf Mon Sep 17 00:00:00 2001 From: George Adams Date: Tue, 13 Aug 2024 09:35:55 +0100 Subject: [PATCH 32/35] jinja refactoring and more test coverage (#629) --- .github/workflows/code-freeze.yml | 3 + docker_templates/alpine-linux.Dockerfile.j2 | 2 +- docker_templates/nanoserver.Dockerfile.j2 | 2 +- docker_templates/partials/arch-variable.j2 | 2 +- docker_templates/partials/binutils.j2 | 4 +- .../partials/multi-arch-install.j2 | 2 +- .../partials/version-check-windows.j2 | 2 +- docker_templates/partials/version-check.j2 | 2 +- docker_templates/servercore.Dockerfile.j2 | 2 +- docker_templates/ubuntu.Dockerfile.j2 | 2 +- test_generate_dockerfiles.py | 75 +++++++++++++++++++ 11 files changed, 88 insertions(+), 10 deletions(-) diff --git a/.github/workflows/code-freeze.yml b/.github/workflows/code-freeze.yml index f14e3ad89..8f9f79e46 100644 --- a/.github/workflows/code-freeze.yml +++ b/.github/workflows/code-freeze.yml @@ -33,6 +33,9 @@ jobs: # Code freeze if branch-regex matches codefreeze_if_branch_match: + permissions: + contents: write + pull-requests: write needs: codefreeze_branch_check uses: adoptium/.github/.github/workflows/code-freeze.yml@main if: (github.event_name == 'pull_request_target' || (github.event_name == 'issue_comment' && github.event.issue.pull_request)) && needs.codefreeze_branch_check.outputs.regex-matches == 'true' diff --git a/docker_templates/alpine-linux.Dockerfile.j2 b/docker_templates/alpine-linux.Dockerfile.j2 index 816c4a690..9344dd20f 100644 --- a/docker_templates/alpine-linux.Dockerfile.j2 +++ b/docker_templates/alpine-linux.Dockerfile.j2 @@ -15,7 +15,7 @@ RUN set -eux; \ ca-certificates p11-kit-trust \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 musl-locales musl-locales-lang \ -{% include 'partials/binutils.j2' -%} + {%- include 'partials/binutils.j2' %} tzdata \ # Contains `csplit` used for splitting multiple certificates in one file to multiple files, since keytool can # only import one at a time. diff --git a/docker_templates/nanoserver.Dockerfile.j2 b/docker_templates/nanoserver.Dockerfile.j2 index 15a10abb5..31be40987 100644 --- a/docker_templates/nanoserver.Dockerfile.j2 +++ b/docker_templates/nanoserver.Dockerfile.j2 @@ -22,4 +22,4 @@ RUN echo Verifying install ... \ {% endif -%} && echo java {% if version|int >= 11 %}--{% else %}-{% endif %}version && java {% if version|int >= 11 %}--{% else %}-{% endif %}version \ && echo Complete. -{% include 'partials/jshell.j2' %} \ No newline at end of file +{% include 'partials/jshell.j2' %} diff --git a/docker_templates/partials/arch-variable.j2 b/docker_templates/partials/arch-variable.j2 index b40f728de..9e32b5848 100644 --- a/docker_templates/partials/arch-variable.j2 +++ b/docker_templates/partials/arch-variable.j2 @@ -4,4 +4,4 @@ ARCH="$(apk --print-arch)"; \ {%- elif os == "ubi9-minimal" %} ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)"; \ -{%- endif -%} \ No newline at end of file +{%- endif -%} diff --git a/docker_templates/partials/binutils.j2 b/docker_templates/partials/binutils.j2 index d81e9ce8c..b4b7872d0 100644 --- a/docker_templates/partials/binutils.j2 +++ b/docker_templates/partials/binutils.j2 @@ -1,5 +1,5 @@ - {% if image_type == "jdk" and version|int >= 13 -%} +{% if image_type == "jdk" and version|int >= 13 %} # jlink --strip-debug on 13+ needs objcopy: https://github.com/docker-library/openjdk/issues/351 # Error: java.io.IOException: Cannot run program "objcopy": error=2, No such file or directory binutils \ - {% endif -%} +{%- endif -%} diff --git a/docker_templates/partials/multi-arch-install.j2 b/docker_templates/partials/multi-arch-install.j2 index 5ad1f5bb0..4f8a9e6a0 100644 --- a/docker_templates/partials/multi-arch-install.j2 +++ b/docker_templates/partials/multi-arch-install.j2 @@ -27,4 +27,4 @@ RUN set -eux; \ --strip-components 1 \ --no-same-owner \ ; \ - rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; \ No newline at end of file + rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; diff --git a/docker_templates/partials/version-check-windows.j2 b/docker_templates/partials/version-check-windows.j2 index fa4c2daac..3c0df1f4f 100644 --- a/docker_templates/partials/version-check-windows.j2 +++ b/docker_templates/partials/version-check-windows.j2 @@ -4,4 +4,4 @@ RUN Write-Host 'Verifying install ...'; \ {% endif -%} Write-Host 'java {% if version|int >= 11 %}--{% else %}-{% endif %}version'; java {% if version|int >= 11 %}--{% else %}-{% endif %}version; \ \ - Write-Host 'Complete.' \ No newline at end of file + Write-Host 'Complete.' diff --git a/docker_templates/partials/version-check.j2 b/docker_templates/partials/version-check.j2 index 50afca768..d019ebd99 100644 --- a/docker_templates/partials/version-check.j2 +++ b/docker_templates/partials/version-check.j2 @@ -7,4 +7,4 @@ RUN set -eux; \ echo "javac {% if version|int >= 11 %}--{% else %}-{% endif %}version"; javac {% if version|int >= 11 %}--{% else %}-{% endif %}version; \ {% endif -%} echo "java {% if version|int >= 11 %}--{% else %}-{% endif %}version"; java {% if version|int >= 11 %}--{% else %}-{% endif %}version; \ - echo "Complete." \ No newline at end of file + echo "Complete." diff --git a/docker_templates/servercore.Dockerfile.j2 b/docker_templates/servercore.Dockerfile.j2 index 56521ab75..926980255 100644 --- a/docker_templates/servercore.Dockerfile.j2 +++ b/docker_templates/servercore.Dockerfile.j2 @@ -31,4 +31,4 @@ RUN Write-Host ('Downloading {{ arch_data.download_url }} ...'); \ Remove-Item openjdk.msi -Force {% include 'partials/version-check-windows.j2' %} -{% include 'partials/jshell.j2' %} \ No newline at end of file +{% include 'partials/jshell.j2' %} diff --git a/docker_templates/ubuntu.Dockerfile.j2 b/docker_templates/ubuntu.Dockerfile.j2 index 68534423b..f5c13653a 100644 --- a/docker_templates/ubuntu.Dockerfile.j2 +++ b/docker_templates/ubuntu.Dockerfile.j2 @@ -19,7 +19,7 @@ RUN set -eux; \ # utilities for keeping Ubuntu and OpenJDK CA certificates in sync # https://github.com/adoptium/containers/issues/293 ca-certificates p11-kit \ -{% include 'partials/binutils.j2' -%} + {%- include 'partials/binutils.j2' %} tzdata \ # locales ensures proper character encoding and locale-specific behaviors using en_US.UTF-8 locales \ diff --git a/test_generate_dockerfiles.py b/test_generate_dockerfiles.py index 2e2f0b72e..8a8f32e18 100644 --- a/test_generate_dockerfiles.py +++ b/test_generate_dockerfiles.py @@ -157,6 +157,81 @@ def test_jdk11plus_jshell_cmd(self): expected_string = 'CMD ["jshell"]' self.assertNotIn(expected_string, rendered_template) + def test_binutils_inclusion(self): + template_name = "ubuntu.Dockerfile.j2" + template = self.env.get_template(template_name) + + # Binutils should be included for jdk images with version >= 13 + with self.subTest("jdk 13+ should include binutils"): + context = { + "version": 13, + "image_type": "jdk", + "os": "ubuntu", + "arch_data": {}, + } + rendered_template = template.render(**context) + self.assertIn("binutils", rendered_template) + + # Binutils should not be included for jre images regardless of version + with self.subTest("jre 13+ should not include binutils"): + context = { + "version": 13, + "image_type": "jre", + "os": "ubuntu", + "arch_data": {}, + } + rendered_template = template.render(**context) + self.assertNotIn("binutils", rendered_template) + + # Binutils should not be included for jdk images with version < 13 + with self.subTest("jdk < 13 should not include binutils"): + context = { + "version": 12, + "image_type": "jdk", + "os": "ubuntu", + "arch_data": {}, + } + rendered_template = template.render(**context) + self.assertNotIn("binutils", rendered_template) + + def test_arch_data_population(self): + template_name = "ubuntu.Dockerfile.j2" + template = self.env.get_template(template_name) + + # Simulate API response + arch_data = { + "amd64": { + "download_url": "http://fake-url.com", + "checksum": "fake-checksum", + } + } + + context = { + "version": 11, + "image_type": "jdk", + "os": "ubuntu", + "arch_data": arch_data, + } + rendered_template = template.render(**context) + + self.assertIn("http://fake-url.com", rendered_template) + self.assertIn("fake-checksum", rendered_template) + + def test_entrypoint_rendering(self): + template_name = "entrypoint.sh.j2" + template = self.env.get_template(template_name) + + context = { + "image_type": "jdk", + "os": "ubuntu", + "version": 11, + } + rendered_template = template.render(**context) + + # Ensure that the entrypoint script contains expected commands + self.assertIn("update-ca-certificates", rendered_template) + self.assertIn("exec \"$@\"", rendered_template) + if __name__ == "__main__": unittest.main() From 617d19933e7e7d8eb5e4449ca7b2ce18804989c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Aug 2024 13:46:16 +1200 Subject: [PATCH 33/35] build(deps): bump github/codeql-action from 3.26.0 to 3.26.1 (#632) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.0 to 3.26.1. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/eb055d739abdc2e8de2e5f4ba1a8b246daa779aa...29d86d22a34ea372b1bbf3b2dced2e25ca6b3384) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 42d9b190a..109027a15 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 + uses: github/codeql-action/init@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 + uses: github/codeql-action/autobuild@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 + uses: github/codeql-action/analyze@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index 3688dc46e..a8609f72b 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0 + uses: github/codeql-action/upload-sarif@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 with: sarif_file: results.sarif From fb5550ed1ea7821593d3557ba89a047b8c331eea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 14:31:29 +1200 Subject: [PATCH 34/35] build(deps): bump github/codeql-action from 3.26.1 to 3.26.2 (#633) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.1 to 3.26.2. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/29d86d22a34ea372b1bbf3b2dced2e25ca6b3384...429e1977040da7a23b6822b13c129cd1ba93dbb2) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 109027a15..9dcadb05f 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 + uses: github/codeql-action/init@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 + uses: github/codeql-action/autobuild@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 + uses: github/codeql-action/analyze@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index a8609f72b..a01b5fc64 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@29d86d22a34ea372b1bbf3b2dced2e25ca6b3384 # v3.26.1 + uses: github/codeql-action/upload-sarif@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 with: sarif_file: results.sarif From d13a1cc170046e3b3ea4b35c82e1ff4b5b866ca1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 12:59:10 +1200 Subject: [PATCH 35/35] build(deps): bump github/codeql-action from 3.26.2 to 3.26.3 (#635) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.2 to 3.26.3. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/429e1977040da7a23b6822b13c129cd1ba93dbb2...883d8588e56d1753a8a58c1c86e88976f0c23449) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/scorecards.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 9dcadb05f..c836450a3 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -45,7 +45,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 + uses: github/codeql-action/init@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -55,7 +55,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 + uses: github/codeql-action/autobuild@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 # ℹī¸ Command-line programs to run using the OS shell. # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun @@ -68,6 +68,6 @@ jobs: # ./location_of_script_within_repo/buildscript.sh - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 + uses: github/codeql-action/analyze@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml index a01b5fc64..a8e742223 100644 --- a/.github/workflows/scorecards.yml +++ b/.github/workflows/scorecards.yml @@ -66,6 +66,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2 + uses: github/codeql-action/upload-sarif@883d8588e56d1753a8a58c1c86e88976f0c23449 # v3.26.3 with: sarif_file: results.sarif