ARG PARENT_IMAGE=086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:debian13-python311
FROM $PARENT_IMAGE AS base
USER root
RUN apt-get update && \
    apt-get -y upgrade && \
    apt-get install -y --no-install-recommends mediainfo ffmpeg && \
    apt-get clean all && \
    rm -rf /var/lib/apt/lists/*
USER worker
WORKDIR /var/app/venv
RUN python3.11 -m venv /var/app/venv
ENV PATH="/var/app/venv/bin:$PATH"
WORKDIR /var/app
COPY --chown=worker:worker requirements.txt ./

FROM base AS deploy
RUN pip install -I --no-cache-dir -r /var/app/requirements.txt
COPY --chown=worker:worker transcoding ./transcoding
COPY --chown=worker:worker entrypoint.sh main.py ./

ENTRYPOINT ["./entrypoint.sh"]

FROM base AS lint-and-test
COPY --chown=worker:worker requirements-dev.txt ./
RUN pip install --no-cache-dir -r /var/app/requirements-dev.txt
COPY --chown=worker:worker transcoding ./transcoding
COPY --chown=worker:worker tests ./tests
COPY --chown=worker:worker .flake8 lint-and-test.sh main.py ./
ENTRYPOINT ["./lint-and-test.sh"]
