FROM 086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:lambda-python313

ARG version
LABEL Version=$version
ENV build_version=$version

# Install additional packages that aren't on the base image
USER root
RUN dnf install gcc -y
USER worker

# Install uv
COPY --from=ghcr.io/astral-sh/uv:0.6.9 /uv /uvx /bin/

# Enable bytecode compilation, to improve cold-start performance.
ENV UV_COMPILE_BYTECODE=1

# Copy dependency files and install Python packages
COPY pyproject.toml uv.lock ./
RUN uv export --frozen --no-emit-workspace --no-dev -o requirements.txt && \
    uv pip install --system --no-cache -r requirements.txt

# Copy Datadog extension AFTER Python packages are installed
COPY --from=public.ecr.aws/datadog/lambda-extension:88 /opt/. /opt/

# Copy application code
COPY config.py ./
COPY src/ ./src


EXPOSE 8080

ENV DD_LAMBDA_HANDLER=src.app.handler
CMD [ "datadog_lambda.handler.handler" ]
