Files
sausage/userland/brush/source/e2e/atuin/Dockerfile
T
2026-11-11 22:04:16 +00:00

27 lines
1.3 KiB
Docker

# Environment for running atuin's bash shell-integration tests (see tests/). atuin itself is
# a pinned release binary; the test suite is our own, written to be upstreamable.
FROM ubuntu:26.04
ARG ATUIN_VERSION=18.21.0
# Bump these together with ATUIN_VERSION; they are the release's own .tar.gz.sha256 entries.
ARG ATUIN_SHA256_X86_64=434d82b4c5f691b6f0423f30a4b931df4afded19b05a795a280192fdf8a61a2d
ARG ATUIN_SHA256_AARCH64=dbdee27f7fc67b92e770d1af89d3b421051499a058cd3e4698d123e0117fa950
RUN apt-get update && apt-get install -y --no-install-recommends \
tmux curl ca-certificates python3-pytest python3-libtmux \
&& rm -rf /var/lib/apt/lists/*
RUN case "$(uname -m)" in \
x86_64) sha=$ATUIN_SHA256_X86_64 ;; \
aarch64) sha=$ATUIN_SHA256_AARCH64 ;; \
*) exit 1 ;; \
esac \
&& target="$(uname -m)-unknown-linux-gnu" \
&& curl -fsSL -o /tmp/atuin.tar.gz \
"https://github.com/atuinsh/atuin/releases/download/v${ATUIN_VERSION}/atuin-${target}.tar.gz" \
&& echo "$sha /tmp/atuin.tar.gz" | sha256sum -c - \
&& tar -xzf /tmp/atuin.tar.gz -C /usr/local/bin --strip-components=1 "atuin-${target}/atuin" \
&& rm /tmp/atuin.tar.gz
COPY atuin/entrypoint.sh atuin/skip-list.txt /e2e/
COPY atuin/tests /e2e/tests
COPY lib /e2e/lib
ENV LANG=C.UTF-8 PYTHONPATH=/e2e/lib
ENTRYPOINT ["/e2e/entrypoint.sh"]