FROM harbor.cta-observatory.org/proxy_cache/library/python:3.14-bookworm

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PLAYWRIGHT_BROWSERS_PATH=/opt/ms-playwright

RUN apt-get update && apt-get install -y --no-install-recommends \
        ca-certificates \
        curl \
        git \
        nodejs=18.20.4+dfsg-1~deb12u2 \
        npm=9.2.0~ds1-1 \
    && rm -rf /var/lib/apt/lists/*

COPY --from=ghcr.io/astral-sh/uv:0.12.5 /uv /usr/local/bin/
RUN uv pip install --system --no-cache \
        pytest==9.1.1 \
        pytest-playwright==0.8.0 \
        allure-pytest==2.16.0 \
        pytest-requirements==0.3.1 \
        coverage==7.15.2 \
        pytest-cov==7.1.0 \
        playwright==1.61.0 \
    && playwright install --with-deps chromium firefox \
    && chmod -R a+rX /opt/ms-playwright \
    && npm install -g allure-commandline@2.43.0 --ignore-scripts \
    && adduser --system --group --uid 1000 playwright

USER playwright

CMD ["/bin/bash"]
