aster-ci (rust-1.96-kache-0.14.2)
Published 2026-08-15 14:23:16 +00:00 by agents
Installation
docker pull forge.emrul.dev/aster/aster-ci:rust-1.96-kache-0.14.2sha256:cca0b6c3078df63d268dc5f4c0057519981f40fbf41064d5af6b727a8e2a2466Image layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:d938ff3d4eee15d8600de84bf85eac6ecd0f20bc92dfe305dafbff0bdc974c0f in / |
| CMD ["/bin/bash"] |
| ARG RUST_TOOLCHAIN=1.96.0 |
| ARG SCCACHE_VERSION=0.15.0 |
| ARG KACHE_VERSION=0.14.2 |
| ARG KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a |
| ARG KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 |
| ARG PYTHON_VERSION=3.13 |
| ARG TARGETARCH=amd64 |
| ENV DEBIAN_FRONTEND=noninteractive |
| RUN |7 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 /bin/sh -c printf 'Acquire::ForceIPv4 "true";\n' > /etc/apt/apt.conf.d/99force-ipv4 && apt-get update && apt-get install -y --no-install-recommends build-essential ca-certificates cmake curl git jq libssl-dev lsb-release maven pkg-config software-properties-common sudo unzip wget zip libbz2-dev libffi-dev liblzma-dev libncurses-dev libreadline-dev libsqlite3-dev zlib1g-dev && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN |7 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 /bin/sh -c useradd -m -s /bin/bash runner && echo "runner ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/runner # buildkit |
| RUN |7 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 /bin/sh -c add-apt-repository ppa:deadsnakes/ppa -y && apt-get update && apt-get install -y --no-install-recommends python${PYTHON_VERSION} python${PYTHON_VERSION}-dev python${PYTHON_VERSION}-venv && rm -rf /var/lib/apt/lists/* && ln -sf /usr/bin/python${PYTHON_VERSION} /usr/local/bin/python3 && ln -sf /usr/bin/python${PYTHON_VERSION} /usr/local/bin/python # buildkit |
| RUN |7 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 /bin/sh -c curl -LsSf https://astral.sh/uv/install.sh | sh && mv /root/.local/bin/uv /usr/local/bin/uv && mv /root/.local/bin/uvx /usr/local/bin/uvx # buildkit |
| ENV AGENT_TOOLSDIRECTORY=/opt/hostedtoolcache |
| RUN |7 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 /bin/sh -c NODEARCH=$(case "$(uname -m)" in x86_64) echo x64;; aarch64) echo arm64;; *) echo x64;; esac) && for major in 20 22 24; do ver=$(curl -fsSL https://nodejs.org/dist/index.json | jq -r --arg m "v${major}." '[.[] | select(.version | startswith($m))][0].version' | sed 's/^v//'); dest="${AGENT_TOOLSDIRECTORY}/node/${ver}/${NODEARCH}"; mkdir -p "$dest"; curl -fsSL "https://nodejs.org/dist/v${ver}/node-v${ver}-linux-${NODEARCH}.tar.gz" | tar -xz --strip-components=1 -C "$dest"; touch "${AGENT_TOOLSDIRECTORY}/node/${ver}/${NODEARCH}.complete"; echo "seeded node ${ver} (${NODEARCH})"; done && latest=$(ls -1 "${AGENT_TOOLSDIRECTORY}/node" | sort -V | tail -1) && for b in node npm npx corepack; do ln -sf "${AGENT_TOOLSDIRECTORY}/node/${latest}/${NODEARCH}/bin/${b}" "/usr/local/bin/${b}"; done && chown -R runner:runner "${AGENT_TOOLSDIRECTORY}" && node --version && npm --version # buildkit |
| ARG BUN_VERSION=1.2.15 |
| RUN |8 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 /bin/sh -c BUNARCH=$(case "$(uname -m)" in x86_64) echo x64;; aarch64) echo aarch64;; *) echo x64;; esac) && curl -fsSL "https://github.com/oven-sh/bun/releases/download/bun-v${BUN_VERSION}/bun-linux-${BUNARCH}.zip" -o /tmp/bun.zip && unzip -q /tmp/bun.zip -d /tmp && install -m 0755 "/tmp/bun-linux-${BUNARCH}/bun" /usr/local/bin/bun && ln -sf /usr/local/bin/bun /usr/local/bin/bunx && rm -rf /tmp/bun.zip "/tmp/bun-linux-${BUNARCH}" && bun --version # buildkit |
| ARG DOTNET_CHANNEL=9.0 |
| ENV DOTNET_ROOT=/usr/lib/dotnet DOTNET_INSTALL_DIR=/usr/lib/dotnet DOTNET_CLI_TELEMETRY_OPTOUT=1 DOTNET_NOLOGO=1 |
| RUN |9 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 DOTNET_CHANNEL=9.0 /bin/sh -c curl -fsSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh && bash /tmp/dotnet-install.sh --channel "${DOTNET_CHANNEL}" --install-dir "${DOTNET_ROOT}" && ln -sf "${DOTNET_ROOT}/dotnet" /usr/local/bin/dotnet && chown -R runner:runner "${DOTNET_ROOT}" && rm /tmp/dotnet-install.sh && dotnet --version # buildkit |
| USER runner |
| ENV RUSTUP_HOME=/home/runner/.rustup CARGO_HOME=/home/runner/.cargo |
| RUN |9 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 DOTNET_CHANNEL=9.0 /bin/sh -c curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain ${RUST_TOOLCHAIN} --profile minimal --component rustfmt --component clippy # buildkit |
| ENV PATH=/home/runner/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| RUN |9 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 DOTNET_CHANNEL=9.0 /bin/sh -c ARCH=$(case "$(uname -m)" in x86_64) echo x86_64;; aarch64) echo aarch64;; *) exit 1;; esac) && EXPECTED=$(case "$ARCH" in x86_64) echo "${KACHE_SHA256_AMD64}";; aarch64) echo "${KACHE_SHA256_ARM64}";; esac) && curl -fsSL "https://github.com/kunobi-ninja/kache/releases/download/v${KACHE_VERSION}/kache-${ARCH}-unknown-linux-musl.tar.gz" -o /tmp/kache.tar.gz && printf '%s %s\n' "$EXPECTED" /tmp/kache.tar.gz | sha256sum -c - && tar -xzf /tmp/kache.tar.gz -C /tmp kache && sudo install -m 0755 /tmp/kache /usr/local/bin/kache && rm -f /tmp/kache /tmp/kache.tar.gz && kache --version | grep -Fx "kache ${KACHE_VERSION}" # buildkit |
| COPY kache-ci.toml /etc/kache/ci.toml # buildkit |
| COPY --chmod=0755 kache-target.sh /usr/local/bin/forgejo-kache-target # buildkit |
| RUN |9 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 DOTNET_CHANNEL=9.0 /bin/sh -c ARCH=$(case "$(uname -m)" in x86_64) echo x86_64;; aarch64) echo aarch64;; *) echo x86_64;; esac) && curl -fsSL "https://github.com/mozilla/sccache/releases/download/v${SCCACHE_VERSION}/sccache-v${SCCACHE_VERSION}-${ARCH}-unknown-linux-musl.tar.gz" | tar -xz -C /tmp && sudo install -m 0755 "/tmp/sccache-v${SCCACHE_VERSION}-${ARCH}-unknown-linux-musl/sccache" /usr/local/bin/sccache && rm -rf "/tmp/sccache-v${SCCACHE_VERSION}-${ARCH}-unknown-linux-musl" && sccache --version # buildkit |
| ENV RUSTC_WRAPPER=kache KACHE_CONFIG=/etc/kache/ci.toml |
| ENV UV_CACHE_DIR=/cache/uv |
| USER root |
| RUN |9 RUST_TOOLCHAIN=1.96.0 SCCACHE_VERSION=0.15.0 KACHE_VERSION=0.14.2 KACHE_SHA256_AMD64=8cc4a3eb1621268732c030b3c74bbf3066fae905e4ed0f27e32aeca836b3e95a KACHE_SHA256_ARM64=2892fd7d6243ec791879c5538691ddc501934ae8a70f5bdf497567eafcce1d39 PYTHON_VERSION=3.13 TARGETARCH=amd64 BUN_VERSION=1.2.15 DOTNET_CHANNEL=9.0 /bin/sh -c mkdir -p -m 755 /etc/apt/keyrings && curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" > /etc/apt/sources.list.d/github-cli.list && apt-get update && apt-get install -y --no-install-recommends gh && rm -rf /var/lib/apt/lists/* && gh --version # buildkit |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.version | 24.04 |
Details
2026-08-15 14:23:16 +00:00
Versions (2)
View all
Container
2
OCI / Docker
linux/amd64
986 MiB
rust-1.96-kache-0.14.2
2026-08-15
rust-1.96
2026-08-12