2026-06-15 08:20:03 +00:00
|
|
|
FROM debian:trixie-20260610
|
2025-04-24 12:56:29 +00:00
|
|
|
|
2025-12-14 12:00:59 +00:00
|
|
|
COPY --from=ghcr.io/astral-sh/uv /uv /uvx /bin/
|
2025-06-17 21:48:18 +00:00
|
|
|
|
2025-04-24 12:56:29 +00:00
|
|
|
# Install deps
|
2025-06-17 21:48:18 +00:00
|
|
|
RUN apt-get update && apt-get install --yes --no-install-recommends \
|
2025-09-24 18:13:46 +00:00
|
|
|
composer \
|
2026-02-26 13:06:19 +00:00
|
|
|
file \
|
2025-04-24 12:56:29 +00:00
|
|
|
git \
|
2025-08-27 15:22:06 +00:00
|
|
|
libxml2 \
|
|
|
|
|
libxml2-utils \
|
|
|
|
|
libxslt1.1 \
|
2025-11-13 18:13:59 +00:00
|
|
|
node-less \
|
2025-08-27 15:22:06 +00:00
|
|
|
npm \
|
2025-09-24 18:13:46 +00:00
|
|
|
php-zip \
|
2025-08-27 15:22:06 +00:00
|
|
|
rsync \
|
2025-10-30 12:34:42 +00:00
|
|
|
shfmt \
|
|
|
|
|
xsltproc
|
2025-04-24 12:56:29 +00:00
|
|
|
|
2025-08-27 15:22:06 +00:00
|
|
|
# Install prettier
|
|
|
|
|
RUN npm install -g prettier
|
2025-09-24 18:13:46 +00:00
|
|
|
# Install php cs fixer
|
|
|
|
|
RUN composer global require friendsofphp/php-cs-fixer
|
|
|
|
|
# Add composer to path
|
|
|
|
|
ENV PATH="/root/.composer/vendor/bin:$PATH"
|
2025-06-17 21:48:18 +00:00
|
|
|
# Set uv project env, to persist stuff moving dirs
|
|
|
|
|
ENV UV_PROJECT_ENVIRONMENT=/root/.cache/uv/venv
|
2025-08-27 15:22:06 +00:00
|
|
|
# Add vent to path
|
|
|
|
|
ENV PATH="$UV_PROJECT_ENVIRONMENT/bin:$PATH"
|
2025-10-08 11:27:30 +00:00
|
|
|
|
2025-06-17 21:48:18 +00:00
|
|
|
# Set the workdir
|
2025-10-08 11:27:30 +00:00
|
|
|
WORKDIR /website-source-during-build
|
2025-04-24 12:56:29 +00:00
|
|
|
|
2025-12-16 18:38:12 +00:00
|
|
|
# Copy pyproject, build deps & entrypoint
|
|
|
|
|
COPY ./pyproject.toml ./uv.lock pre-commit.entrypoint.sh ./
|
2024-10-14 22:51:14 +01:00
|
|
|
|
2026-04-14 12:18:18 +00:00
|
|
|
RUN uv sync --no-install-package fsfe_website_build --all-groups
|
2025-10-08 11:27:30 +00:00
|
|
|
|
|
|
|
|
# Set the workdir
|
|
|
|
|
WORKDIR /website-source
|
|
|
|
|
|
2025-12-15 09:19:15 +00:00
|
|
|
ENTRYPOINT ["/website-source-during-build/pre-commit.entrypoint.sh"]
|