diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 07314c0..0324513 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,6 +42,8 @@ jobs: variant: alpine3.22 - name: alpine3.23 variant: alpine3.23 + - name: alpine3.24 + variant: alpine3.24 #VERSIONS name: ${{ matrix.name }} steps: diff --git a/.github/workflows/mirror_stable.yml b/.github/workflows/mirror_stable.yml index 20845a0..59c5ffe 100644 --- a/.github/workflows/mirror_stable.yml +++ b/.github/workflows/mirror_stable.yml @@ -37,6 +37,12 @@ jobs: 1.96-alpine3.23 1.96.0-alpine3.23 alpine3.23 + - name: alpine3.24 + tags: | + 1-alpine3.24 + 1.96-alpine3.24 + 1.96.0-alpine3.24 + alpine3.24 1-alpine 1.96-alpine 1.96.0-alpine diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index f551505..84a3051 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -69,6 +69,11 @@ jobs: platforms: linux/amd64,linux/arm64,linux/ppc64le tags: | nightly-alpine3.23 + - name: alpine3.24 + context: nightly/alpine3.24 + platforms: linux/amd64,linux/arm64,linux/ppc64le + tags: | + nightly-alpine3.24 nightly-alpine #VERSIONS name: ${{ matrix.name }} diff --git a/nightly/alpine3.24/Dockerfile b/nightly/alpine3.24/Dockerfile new file mode 100644 index 0000000..305ba2b --- /dev/null +++ b/nightly/alpine3.24/Dockerfile @@ -0,0 +1,49 @@ +FROM alpine:3.24 + +LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust + +RUN apk add --no-cache \ + ca-certificates \ + musl-dev \ + gcc + +ARG RUST_VERSION=nightly +ENV RUSTUP_HOME=/usr/local/rustup \ + CARGO_HOME=/usr/local/cargo \ + PATH=/usr/local/cargo/bin:$PATH \ + RUST_VERSION=${RUST_VERSION} + +RUN set -eux; \ + \ + arch="$(apk --print-arch)"; \ + case "$arch" in \ + 'x86_64') \ + rustArch='x86_64-unknown-linux-musl'; \ + rustupSha256='9cd3fda5fd293890e36ab271af6a786ee22084b5f6c2b83fd8323cec6f0992c1'; \ + ;; \ + 'aarch64') \ + rustArch='aarch64-unknown-linux-musl'; \ + rustupSha256='88761caacddb92cd79b0b1f939f3990ba1997d701a38b3e8dd6746a562f2a759'; \ + ;; \ + 'ppc64le') \ + rustArch='powerpc64le-unknown-linux-musl'; \ + rustupSha256='e15d033af90b7a55d170aac2d82cc28ddd96dbfcdda7c6d4eb8cb064a99c4646'; \ + ;; \ + *) \ + echo >&2 "unsupported architecture: $arch"; \ + exit 1; \ + ;; \ + esac; \ + \ + url="https://static.rust-lang.org/rustup/archive/1.29.0/${rustArch}/rustup-init"; \ + wget "$url"; \ + echo "${rustupSha256} *rustup-init" | sha256sum -c -; \ + \ + chmod +x rustup-init; \ + ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \ + rm rustup-init; \ + chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \ + \ + rustup --version; \ + cargo --version; \ + rustc --version; diff --git a/stable/alpine3.24/Dockerfile b/stable/alpine3.24/Dockerfile new file mode 100644 index 0000000..bba7490 --- /dev/null +++ b/stable/alpine3.24/Dockerfile @@ -0,0 +1,48 @@ +FROM alpine:3.24 + +LABEL org.opencontainers.image.source=https://github.com/rust-lang/docker-rust + +RUN apk add --no-cache \ + ca-certificates \ + musl-dev \ + gcc + +ENV RUSTUP_HOME=/usr/local/rustup \ + CARGO_HOME=/usr/local/cargo \ + PATH=/usr/local/cargo/bin:$PATH \ + RUST_VERSION=1.96.0 + +RUN set -eux; \ + \ + arch="$(apk --print-arch)"; \ + case "$arch" in \ + 'x86_64') \ + rustArch='x86_64-unknown-linux-musl'; \ + rustupSha256='9cd3fda5fd293890e36ab271af6a786ee22084b5f6c2b83fd8323cec6f0992c1'; \ + ;; \ + 'aarch64') \ + rustArch='aarch64-unknown-linux-musl'; \ + rustupSha256='88761caacddb92cd79b0b1f939f3990ba1997d701a38b3e8dd6746a562f2a759'; \ + ;; \ + 'ppc64le') \ + rustArch='powerpc64le-unknown-linux-musl'; \ + rustupSha256='e15d033af90b7a55d170aac2d82cc28ddd96dbfcdda7c6d4eb8cb064a99c4646'; \ + ;; \ + *) \ + echo >&2 "unsupported architecture: $arch"; \ + exit 1; \ + ;; \ + esac; \ + \ + url="https://static.rust-lang.org/rustup/archive/1.29.0/${rustArch}/rustup-init"; \ + wget "$url"; \ + echo "${rustupSha256} *rustup-init" | sha256sum -c -; \ + \ + chmod +x rustup-init; \ + ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION --default-host ${rustArch}; \ + rm rustup-init; \ + chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \ + \ + rustup --version; \ + cargo --version; \ + rustc --version; diff --git a/x.py b/x.py index f509fe5..ea2feff 100755 --- a/x.py +++ b/x.py @@ -64,10 +64,11 @@ def write_versions(rust_version, rustup_version): AlpineArch("ppc64le", "ppc64le", "linux/ppc64le", "powerpc64le-unknown-linux-musl"), ] -latest_alpine_version = "3.23" +latest_alpine_version = "3.24" alpine_versions = [ "3.21", "3.22", + "3.23", latest_alpine_version, ]