diff --git a/1.5/alpine3.13/Dockerfile b/1.5/alpine3.13/Dockerfile new file mode 100644 index 0000000..28ee660 --- /dev/null +++ b/1.5/alpine3.13/Dockerfile @@ -0,0 +1,48 @@ +FROM alpine:3.13 + +ENV JULIA_PATH /usr/local/julia +ENV PATH $JULIA_PATH/bin:$PATH + +# https://julialang.org/juliareleases.asc +# Julia (Binary signing key) +ENV JULIA_GPG 3673DF529D9049477F76B37566E3C7DC03D6E495 + +# https://julialang.org/downloads/ +ENV JULIA_VERSION 1.5.3 + +RUN set -eux; \ + \ + apk add --no-cache --virtual .fetch-deps gnupg; \ + \ +# https://julialang.org/downloads/#julia-command-line-version +# https://julialang-s3.julialang.org/bin/checksums/julia-1.5.3.sha256 +# this "case" statement is generated via "update.sh" + apkArch="$(apk --print-arch)"; \ + case "$apkArch" in \ +# amd64 + x86_64) tarArch='x86_64'; dirArch='x64'; sha256='2faf4ebe3b5fa1bbee853655ef7c292b457e80d3fca1af1c8d3f179286b27da6' ;; \ + *) echo >&2 "error: current architecture ($apkArch) does not have a corresponding Julia binary release"; exit 1 ;; \ + esac; \ + \ + folder="$(echo "$JULIA_VERSION" | cut -d. -f1-2)"; \ + wget -O julia.tar.gz.asc "https://julialang-s3.julialang.org/bin/musl/${dirArch}/${folder}/julia-${JULIA_VERSION}-musl-${tarArch}.tar.gz.asc"; \ + wget -O julia.tar.gz "https://julialang-s3.julialang.org/bin/musl/${dirArch}/${folder}/julia-${JULIA_VERSION}-musl-${tarArch}.tar.gz"; \ + \ + echo "${sha256} *julia.tar.gz" | sha256sum -c -; \ + \ + export GNUPGHOME="$(mktemp -d)"; \ + gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys "$JULIA_GPG"; \ + gpg --batch --verify julia.tar.gz.asc julia.tar.gz; \ + command -v gpgconf > /dev/null && gpgconf --kill all; \ + rm -rf "$GNUPGHOME" julia.tar.gz.asc; \ + \ + mkdir "$JULIA_PATH"; \ + tar -xzf julia.tar.gz -C "$JULIA_PATH" --strip-components 1; \ + rm julia.tar.gz; \ + \ + apk del --no-network .fetch-deps; \ + \ +# smoke test + julia --version + +CMD ["julia"] diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 8281303..b2abfc9 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -5,7 +5,7 @@ declare -A aliases=( [1.5]='1 latest' ) defaultDebianVariant='buster' -defaultAlpineVariant='alpine3.12' +defaultAlpineVariant='alpine3.13' self="$(basename "$BASH_SOURCE")" cd "$(dirname "$(readlink -f "$BASH_SOURCE")")" @@ -90,7 +90,7 @@ join() { for version in "${versions[@]}"; do for v in \ {buster,stretch} \ - alpine3.12 \ + alpine{3.13,3.12} \ windows/windowsservercore-{1809,ltsc2016} \ ; do dir="$version/$v" diff --git a/update.sh b/update.sh index cf2c0db..a11e150 100755 --- a/update.sh +++ b/update.sh @@ -65,7 +65,7 @@ for version in "${versions[@]}"; do for v in \ windows/windowsservercore-{ltsc2016,1809} \ - alpine3.12 \ + alpine{3.13,3.12} \ {stretch,buster} \ ; do dir="$version/$v"