FROM 086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:debian13-python314 AS base

USER root

RUN apt-get -y update \
    && apt-get -y upgrade --no-install-recommends \
    && apt-get -y clean \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /var/app

RUN python3 -m venv ./env
ENV PATH="/var/app/env/bin:${PATH}"

COPY requirements.txt ./
RUN pip install --upgrade pip setuptools \
    && pip install -r ./requirements.txt

FROM base AS dev

COPY requirements-dev.txt ./
RUN pip install -r ./requirements-dev.txt

COPY config.py ./
COPY src/ ./src/
COPY tests/ ./tests/
COPY .flake8 docker-compose.yaml pytest.ini ./

FROM dev AS lint-and-test

COPY lint-and-test.sh ./

ENTRYPOINT ["bash", "/var/app/lint-and-test.sh"]

FROM base AS app

COPY config.py ./
COPY src/ ./src/

ENTRYPOINT ["/var/app/env/bin/python3", "-m", "src.sound_recordings_takedown"]
