# syntax=docker/dockerfile:1.4
FROM ubuntu:latest

ENV DEBIAN_FRONTEND=noninteractive
ARG EXPECTED_CODEX_EMAIL=temp@gmail.com

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        ca-certificates \
        nodejs \
        npm \
    && npm install -g @openai/codex \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

COPY app/codex_account.js /usr/local/bin/codex-account
COPY app/verify_codex_email.sh /usr/local/bin/verify-codex-email
RUN chmod +x /usr/local/bin/codex-account /usr/local/bin/verify-codex-email

ENV EXPECTED_CODEX_EMAIL=${EXPECTED_CODEX_EMAIL}

RUN --mount=type=secret,id=codex_auth,required=true \
    install -d -m 700 /root/.codex \
    && cp /run/secrets/codex_auth /root/.codex/auth.json \
    && chmod 600 /root/.codex/auth.json \
    && EXPECTED_CODEX_EMAIL="$EXPECTED_CODEX_EMAIL" verify-codex-email \
    && rm -f /root/.codex/auth.json

CMD ["codex-account"]
