FROM python:3.12

WORKDIR /app

COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv

# Should freeze deps, but right now this Dockerfile is only used for build scripts.
# The runtime env is defined in modal_deployment_script.py
COPY . .
RUN uv sync --frozen --no-dev

ENV PYTHONPATH=/app
ENV PATH="/app/.venv/bin:$PATH"
