diff --git a/22/alpine3.23/Dockerfile b/22/alpine3.23/Dockerfile index 974a3153b..2df13ec0b 100644 --- a/22/alpine3.23/Dockerfile +++ b/22/alpine3.23/Dockerfile @@ -11,10 +11,8 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="25b5ec8550ca8bac9ade321f8b87e1c1aa6a64020ce34efef0217fe84106794c" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ diff --git a/22/alpine3.24/Dockerfile b/22/alpine3.24/Dockerfile index 048efbf15..545594439 100644 --- a/22/alpine3.24/Dockerfile +++ b/22/alpine3.24/Dockerfile @@ -11,10 +11,8 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="25b5ec8550ca8bac9ade321f8b87e1c1aa6a64020ce34efef0217fe84106794c" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ diff --git a/22/bullseye-slim/Dockerfile b/22/bullseye-slim/Dockerfile index 5cad07f58..37bdfbc11 100644 --- a/22/bullseye-slim/Dockerfile +++ b/22/bullseye-slim/Dockerfile @@ -8,8 +8,6 @@ ENV NODE_VERSION=22.23.1 RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; \ - ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ - s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ diff --git a/22/bullseye/Dockerfile b/22/bullseye/Dockerfile index 808c62c9b..93df8b180 100644 --- a/22/bullseye/Dockerfile +++ b/22/bullseye/Dockerfile @@ -8,8 +8,6 @@ ENV NODE_VERSION=22.23.1 RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64';; \ - ppc64el) ARCH='ppc64le';; \ - s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ diff --git a/22/trixie-slim/Dockerfile b/22/trixie-slim/Dockerfile index d6b1a70cb..fa72b1039 100644 --- a/22/trixie-slim/Dockerfile +++ b/22/trixie-slim/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/22/trixie/Dockerfile b/22/trixie/Dockerfile index aeae60f08..96372da58 100644 --- a/22/trixie/Dockerfile +++ b/22/trixie/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le';; \ s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/24/alpine3.23/Dockerfile b/24/alpine3.23/Dockerfile index df4aa5a8b..26e6ba2b5 100644 --- a/24/alpine3.23/Dockerfile +++ b/24/alpine3.23/Dockerfile @@ -11,10 +11,7 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="b818a0c3857272329cad4d575abf49e5060215858c9c3015437366f8adc7b85d" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ - arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ diff --git a/24/alpine3.24/Dockerfile b/24/alpine3.24/Dockerfile index 56fec5985..c7e6cafb6 100644 --- a/24/alpine3.24/Dockerfile +++ b/24/alpine3.24/Dockerfile @@ -11,10 +11,7 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="b818a0c3857272329cad4d575abf49e5060215858c9c3015437366f8adc7b85d" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ - arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ diff --git a/24/bookworm-slim/Dockerfile b/24/bookworm-slim/Dockerfile index 2bfe2946b..440506877 100644 --- a/24/bookworm-slim/Dockerfile +++ b/24/bookworm-slim/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/24/bookworm/Dockerfile b/24/bookworm/Dockerfile index 38839d595..2b8455c25 100644 --- a/24/bookworm/Dockerfile +++ b/24/bookworm/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le';; \ s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/24/bullseye-slim/Dockerfile b/24/bullseye-slim/Dockerfile index f501d7c09..1b47f0fbd 100644 --- a/24/bullseye-slim/Dockerfile +++ b/24/bullseye-slim/Dockerfile @@ -8,10 +8,7 @@ ENV NODE_VERSION=24.18.0 RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; \ - ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ - s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/24/bullseye/Dockerfile b/24/bullseye/Dockerfile index 08b80bb7c..069aeb82b 100644 --- a/24/bullseye/Dockerfile +++ b/24/bullseye/Dockerfile @@ -8,10 +8,7 @@ ENV NODE_VERSION=24.18.0 RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64';; \ - ppc64el) ARCH='ppc64le';; \ - s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/24/trixie-slim/Dockerfile b/24/trixie-slim/Dockerfile index 56111ccc2..1a80e0486 100644 --- a/24/trixie-slim/Dockerfile +++ b/24/trixie-slim/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/24/trixie/Dockerfile b/24/trixie/Dockerfile index 573c40817..8c25fb846 100644 --- a/24/trixie/Dockerfile +++ b/24/trixie/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le';; \ s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/26/alpine3.23/Dockerfile b/26/alpine3.23/Dockerfile index a5ed0ade4..0f5cac257 100644 --- a/26/alpine3.23/Dockerfile +++ b/26/alpine3.23/Dockerfile @@ -11,11 +11,7 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="e6c40e4f9828d387004a3ac82bc89bdef823ddcc462b540aaa1481f67e7ee6d0" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ - arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ - s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ && if [ -n "${CHECKSUM}" ]; then \ diff --git a/26/alpine3.24/Dockerfile b/26/alpine3.24/Dockerfile index 29a91be46..e7f4ef852 100644 --- a/26/alpine3.24/Dockerfile +++ b/26/alpine3.24/Dockerfile @@ -11,11 +11,7 @@ RUN addgroup -g 1000 node \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ x86_64) ARCH='x64' CHECKSUM="e6c40e4f9828d387004a3ac82bc89bdef823ddcc462b540aaa1481f67e7ee6d0" OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ aarch64) OPENSSL_ARCH=linux-aarch64;; \ - arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ - s390x) OPENSSL_ARCH=linux-s390x;; \ *) ;; \ esac \ && if [ -n "${CHECKSUM}" ]; then \ diff --git a/26/bookworm-slim/Dockerfile b/26/bookworm-slim/Dockerfile index f108d10a0..9585f530a 100644 --- a/26/bookworm-slim/Dockerfile +++ b/26/bookworm-slim/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/26/bookworm/Dockerfile b/26/bookworm/Dockerfile index c8bfb246c..4247f13bd 100644 --- a/26/bookworm/Dockerfile +++ b/26/bookworm/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le';; \ s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/26/bullseye-slim/Dockerfile b/26/bullseye-slim/Dockerfile index 059ad3ac7..8617dd82e 100644 --- a/26/bullseye-slim/Dockerfile +++ b/26/bullseye-slim/Dockerfile @@ -8,10 +8,7 @@ ENV NODE_VERSION=26.4.0 RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; \ - ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ - s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/26/bullseye/Dockerfile b/26/bullseye/Dockerfile index c363a9bf8..3891c7ba0 100644 --- a/26/bullseye/Dockerfile +++ b/26/bullseye/Dockerfile @@ -8,10 +8,7 @@ ENV NODE_VERSION=26.4.0 RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ amd64) ARCH='x64';; \ - ppc64el) ARCH='ppc64le';; \ - s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/26/trixie-slim/Dockerfile b/26/trixie-slim/Dockerfile index 0ce53e420..6167dda84 100644 --- a/26/trixie-slim/Dockerfile +++ b/26/trixie-slim/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ && set -ex \ diff --git a/26/trixie/Dockerfile b/26/trixie/Dockerfile index 82b42e48a..2b3dcf9fc 100644 --- a/26/trixie/Dockerfile +++ b/26/trixie/Dockerfile @@ -11,7 +11,6 @@ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ ppc64el) ARCH='ppc64le';; \ s390x) ARCH='s390x';; \ arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ *) echo "unsupported architecture"; exit 1 ;; \ esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index 7ccaab1a1..94be2c144 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -10,13 +10,7 @@ RUN addgroup -g 1000 node \ curl \ && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" \ && case "${alpineArch##*-}" in \ - x86_64) ARCH='x64' CHECKSUM=CHECKSUM_x64 OPENSSL_ARCH=linux-x86_64;; \ - x86) OPENSSL_ARCH=linux-elf;; \ - aarch64) OPENSSL_ARCH=linux-aarch64;; \ - arm*) OPENSSL_ARCH=linux-armv4;; \ - ppc64le) OPENSSL_ARCH=linux-ppc64le;; \ - s390x) OPENSSL_ARCH=linux-s390x;; \ - *) ;; \ + "${ALPINE_ARCH[@]}" esac \ && if [ -n "${CHECKSUM}" ]; then \ set -eu; \ diff --git a/Dockerfile-debian.template b/Dockerfile-debian.template index 5f00f8f08..23a503dc8 100644 --- a/Dockerfile-debian.template +++ b/Dockerfile-debian.template @@ -7,12 +7,7 @@ ENV NODE_VERSION=0.0.0 RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ - amd64) ARCH='x64';; \ - ppc64el) ARCH='ppc64le';; \ - s390x) ARCH='s390x';; \ - arm64) ARCH='arm64';; \ - armhf) ARCH='armv7l';; \ - *) echo "unsupported architecture"; exit 1 ;; \ + "${DEB_ARCH[@]}" esac \ # use pre-existing gpg directory, see https://github.com/nodejs/docker-node/pull/1895#issuecomment-1550389150 && export GNUPGHOME="$(mktemp -d)" \ diff --git a/Dockerfile-slim.template b/Dockerfile-slim.template index 5a643ebde..b2d858ceb 100644 --- a/Dockerfile-slim.template +++ b/Dockerfile-slim.template @@ -7,12 +7,7 @@ ENV NODE_VERSION=0.0.0 RUN ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" \ && case "${dpkgArch##*-}" in \ - amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; \ - ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; \ - s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; \ - arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; \ - armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; \ - *) echo "unsupported architecture"; exit 1 ;; \ + "${DEB_ARCH[@]}" esac \ && set -ex \ # libatomic1 for arm diff --git a/update.sh b/update.sh index fe25202ab..dc8c1906c 100755 --- a/update.sh +++ b/update.sh @@ -153,12 +153,69 @@ function update_node_version() { fi else sed -Ei -e "s/(alpine:)0.0/\\1${alpine_version}/" "${dockerfile}-tmp" - sed -Ei -e "s/CHECKSUM=CHECKSUM_x64/CHECKSUM=\"${checksum}\"/" "${dockerfile}-tmp" + + alpine_arch='' + arches=$(jq -r ".\"${version}\".variants.\"alpine${alpine_version}\" | @sh" "versions.json") + if [[ "${arches}" == *"amd64"* ]]; then + alpine_arch+='x86_64) ARCH='"'"'x64'"'"' CHECKSUM="'${checksum}'" OPENSSL_ARCH=linux-x86_64;; \\\n ' + fi + if [[ "$arches" == *"arm64v8"* ]]; then + alpine_arch+='aarch64) OPENSSL_ARCH=linux-aarch64;; \\\n ' + fi + if [[ "$arches" == *"arm32"* ]]; then + alpine_arch+='arm*) OPENSSL_ARCH=linux-armv4;; \\\n ' + fi + if [[ "$arches" == *"ppc64le"* ]]; then + alpine_arch+='ppc64le) OPENSSL_ARCH=linux-ppc64le;; \\\n ' + fi + if [[ "$arches" == *"s390x"* ]]; then + alpine_arch+='s390x) OPENSSL_ARCH=linux-s390x;; \\\n ' + fi + alpine_arch+='*) ;; \\' + sed -Ei -e "s/\"\\$\{ALPINE_ARCH\[@\]\}\"/${alpine_arch}/" "${dockerfile}-tmp" fi elif is_debian "${variant}"; then sed -Ei -e "s/(buildpack-deps:)name/\\1${variant}/" "${dockerfile}-tmp" + deb_arch='' + arches=$(jq -r ".\"${version}\".variants.\"${variant}\" | @sh" "versions.json") + if [[ "${arches}" == *"amd64"* ]]; then + deb_arch+='amd64) ARCH='"'"'x64'"'"';; \\\n ' + fi + if [[ "$arches" == *"ppc64le"* ]]; then + deb_arch+='ppc64el) ARCH='"'"'ppc64le'"'"';; \\\n ' + fi + if [[ "$arches" == *"s390x"* ]]; then + deb_arch+='s390x) ARCH='"'"'s390x'"'"';; \\\n ' + fi + if [[ "$arches" == *"arm64v8"* ]]; then + deb_arch+='arm64) ARCH='"'"'arm64'"'"';; \\\n ' + fi + if [[ "$arches" == *"arm32v7"* ]]; then + deb_arch+='armhf) ARCH='"'"'armv7l'"'"';; \\\n ' + fi + deb_arch+='*) echo "unsupported architecture"; exit 1 ;; \\' + sed -Ei -e "s/\"\\$\{DEB_ARCH\[@\]\}\"/${deb_arch}/" "${dockerfile}-tmp" elif is_debian_slim "${variant}"; then sed -Ei -e "s/(debian:)name-slim/\\1${variant}/" "${dockerfile}-tmp" + deb_arch='' + arches=$(jq -r ".\"${version}\".variants.\"${variant}\" | @sh" "versions.json") + if [[ "${arches}" == *"amd64"* ]]; then + deb_arch+='amd64) ARCH='"'"'x64'"'"' OPENSSL_ARCH='"'"'linux-x86_64'"'"';; \\\n ' + fi + if [[ "$arches" == *"ppc64le"* ]]; then + deb_arch+='ppc64el) ARCH='"'"'ppc64le'"'"' OPENSSL_ARCH='"'"'linux-ppc64le'"'"';; \\\n ' + fi + if [[ "$arches" == *"s390x"* ]]; then + deb_arch+='s390x) ARCH='"'"'s390x'"'"' OPENSSL_ARCH='"'"'linux*-s390x'"'"';; \\\n ' + fi + if [[ "$arches" == *"arm64v8"* ]]; then + deb_arch+='arm64) ARCH='"'"'arm64'"'"' OPENSSL_ARCH='"'"'linux-aarch64'"'"';; \\\n ' + fi + if [[ "$arches" == *"arm32v7"* ]]; then + deb_arch+='armhf) ARCH='"'"'armv7l'"'"' OPENSSL_ARCH='"'"'linux-armv4'"'"';; \\\n ' + fi + deb_arch+='*) echo "unsupported architecture"; exit 1 ;; \\' + sed -Ei -e "s/\"\\$\{DEB_ARCH\[@\]\}\"/${deb_arch}/" "${dockerfile}-tmp" fi # Strip out Yarn v1 from Node 26+ images https://github.com/nodejs/docker-node/issues/2407