FROM 086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:python311 AS base
WORKDIR /var/app
COPY requirements.txt ./

FROM base AS dev
RUN pip install -r requirements.txt
COPY src ./src
CMD ["uvicorn", "src.main:app", "--reload"]

FROM base AS test
RUN pip install -r requirements.txt
RUN pip install pytest pytest-asyncio
COPY src ./src
COPY tests ./tests
CMD ["pytest"]

FROM base AS deploy
RUN pip install --no-deps -r requirements.txt
COPY --chown=nobody:nogroup src ./src
USER nobody
CMD ["uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8080"]
