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

WORKDIR /app

# Install git as root (base image runs as non-root by default)
USER root
RUN apt-get update && apt-get install -y --no-install-recommends git \
    && rm -rf /var/lib/apt/lists/*

# Install pnpm globally
RUN npm install -g pnpm

# Install JS dependencies first (layer cache-friendly)
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile

# Copy only what's needed at runtime
COPY tsconfig.json env.ts ./
COPY src/ src/

# Default env vars (overridable at runtime)
ENV AWS_REGION=us-east-1
ENV CONFIG_ENV=qa
ENV RUNTIME_ENV=ci
ENV GIT_USER_NAME="QA Automation Bot"
ENV GIT_USER_EMAIL="qa-bot@sonymusic-pde.com"

COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
RUN chmod +x /usr/local/bin/docker-entrypoint.sh

USER node

# Create tmp dir for state persistence
RUN mkdir -p tmp

ENTRYPOINT ["docker-entrypoint.sh"]
