FROM astral/uv:python3.12-bookworm-slim

WORKDIR /app

COPY pyproject.toml .
COPY uv.lock .

RUN uv sync --locked --all-extras --dev

COPY srs2std ./srs2std
RUN uv pip install -e .

# download data required by nltk for sentence tokenization
RUN uv run python -c "import nltk; nltk.download('punkt'); nltk.download('punkt_tab')"

COPY tests ./tests

COPY .env .

COPY data ./data
COPY out ./out

COPY iso_template.yaml .

CMD ["sh", "-c", "tail -f /dev/null"]