FROM python:3.11-slim as deps
COPY src.python.service_name/gunicorn-deps.pex /binary-deps.pex
RUN PEX_TOOLS=1 /usr/local/bin/python3.11 /binary-deps.pex venv --scope=deps --compile /bin/app

FROM python:3.11-slim as srcs
COPY src.python.service_name/gunicorn-srcs.pex /binary-srcs.pex
RUN PEX_TOOLS=1 /usr/local/bin/python3.11 /binary-srcs.pex venv --scope=srcs --compile /bin/app

FROM python:3.11-slim
ENV PYTHONUNBUFFERED True
COPY --from=deps /bin/app /bin/app
COPY --from=srcs /bin/app /bin/app
COPY assets/ assets
ENTRYPOINT ["/bin/app/pex"]