FROM 086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:lambda-python314
ARG PACKAGE
COPY . /${PACKAGE}
WORKDIR /${PACKAGE}
USER root
RUN mkdir -p /app
RUN chown -R worker:worker /app
RUN chown -R worker:worker /${PACKAGE}
USER worker
SHELL ["/bin/bash", "-c"]
RUN python3 -m venv venv && \
    source ./venv/bin/activate && \
    pip3 install -U pip && \
    pip3 install -e .
RUN source ./venv/bin/activate && \
    zappa package delphi_dev -o delphi_dev-${PACKAGE}.zip && \
    zappa package delphi_qa -o delphi_qa-${PACKAGE}.zip && \
    zappa package delphi_stage -o delphi_stage-${PACKAGE}.zip && \
    zappa package delphi_prod -o delphi_prod-${PACKAGE}.zip

RUN echo $'cd /${PACKAGE}; \n\
        source ./venv/bin/activate; \n\
        zappa status ${STAGE} \
            && zappa update ${STAGE} -z ${STAGE}-${PACKAGE}.zip\
            || zappa deploy ${STAGE} -z ${STAGE}-${PACKAGE}.zip' > /app/entrypoint.sh && \
    chmod +x /app/entrypoint.sh

ENV PACKAGE=${PACKAGE}
ENTRYPOINT ["/bin/sh", "/app/entrypoint.sh"]
# USAGE - set env variable STAGE and run standard entrypoint

