28 lines
1.2 KiB
Docker
28 lines
1.2 KiB
Docker
# Custom CI image for the arm64 (Raspberry Pi) Gitea Actions runner.
|
|
#
|
|
# The official sagemath/sagemath image is amd64-only; conda-forge's `sage`
|
|
# package is the one place SageMath is actually published for linux-aarch64,
|
|
# so this bakes it (plus the lint/test tools) into a single image, built and
|
|
# pushed once rather than reinstalled on every CI run.
|
|
#
|
|
# Build & push (run directly on the Pi, or any arm64 machine with Docker):
|
|
# docker build -t gitea.piribauer.ch/julian/sage-ci:latest -f .gitea/ci-image/Dockerfile .
|
|
# docker login gitea.piribauer.ch -u julian
|
|
# docker push gitea.piribauer.ch/julian/sage-ci:latest
|
|
#
|
|
# Rebuild and re-push whenever this Dockerfile changes (e.g. bumping the sage
|
|
# version) or the pinned tool versions need updating.
|
|
|
|
FROM condaforge/miniforge3:latest
|
|
|
|
RUN mamba install -y -c conda-forge sage ruff pytest \
|
|
&& mamba clean -afy
|
|
|
|
# actions/checkout@v4 (and other JS-based actions) run via `node` inside this
|
|
# container -- act_runner doesn't inject a runtime of its own when a custom
|
|
# `container:` image is set, so one has to be present here.
|
|
RUN mamba install -y -c conda-forge nodejs \
|
|
&& mamba clean -afy
|
|
|
|
WORKDIR /workspace
|