FROM node:20-bookworm

RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
      ca-certificates \
      git \
      python3 \
      python3-pip \
      python3-venv \
      tzdata && \
    rm -rf /var/lib/apt/lists/*

COPY requirements.lock /tmp/requirements.lock

RUN python3 -m venv /opt/blackout-venv && \
    /opt/blackout-venv/bin/pip install --no-cache-dir -r /tmp/requirements.lock && \
    /opt/blackout-venv/bin/python -c "import dotenv, jdatetime, requests" && \
    /opt/blackout-venv/bin/pytest --version && \
    /opt/blackout-venv/bin/ruff --version && \
    rm /tmp/requirements.lock

ENV PATH="/opt/blackout-venv/bin:$PATH" \
    PYTHONDONTWRITEBYTECODE="1" \
    PYTHONUNBUFFERED="1"

CMD ["bash"]
