PR Title Check / check-title (pull_request) Successful in 8s
Test Python Package / unit-tests (pull_request) Successful in 17s
Code Quality Pipeline / code-quality (pull_request) Successful in 51s
Test Python Package / integration-tests (pull_request) Successful in 1m40s
Test Python Package / coverage-report (pull_request) Successful in 17s
Copy the Docker CLI from the official image instead of apt, and use --network=host during docker build so apt and layer pulls can resolve external registries on standalone runners. Co-authored-by: Cursor <cursoragent@cursor.com>
30 lines
850 B
Docker
30 lines
850 B
Docker
# CI job image for Gitea Actions (act_runner requires Node.js in job containers).
|
|
FROM node:20-bookworm
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
curl \
|
|
git \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=docker:27-cli /usr/local/bin/docker /usr/local/bin/docker
|
|
COPY --from=ghcr.io/astral-sh/uv:0.7.0 /uv /usr/local/bin/uv
|
|
|
|
ENV UV_PYTHON_INSTALL_DIR=/opt/uv-python \
|
|
UV_LINK_MODE=copy
|
|
|
|
COPY .python-version /tmp/.python-version
|
|
RUN uv python install "$(cat /tmp/.python-version)"
|
|
|
|
WORKDIR /app
|
|
|
|
COPY pyproject.toml uv.lock .python-version ./
|
|
|
|
ENV PATH="/app/.venv/bin:${PATH}"
|
|
|
|
RUN --mount=type=secret,id=uv_token \
|
|
UV_INDEX_GITEA_USERNAME=ci-bot \
|
|
UV_INDEX_GITEA_PASSWORD="$(cat /run/secrets/uv_token)" \
|
|
uv sync --all-extras --frozen --no-install-project
|