FROM caddy:2.10.2-alpine@sha256:4c6e91c6ed0e2fa03efd5b44747b625fec79bc9cd06ac5235a779726618e530d AS edge

USER 0:0
RUN setcap -r /usr/bin/caddy \
    && install -d -o 10001 -g 10001 -m 0700 /data /config /var/log/caddy /etc/caddy/denylist /etc/caddy/tls
COPY --chown=0:0 --chmod=0444 deploy/edge/Caddyfile /etc/caddy/Caddyfile
COPY --chown=0:0 --chmod=0444 deploy/edge/Caddyfile.shared-host /etc/caddy/Caddyfile.shared-host
COPY --chown=0:0 --chmod=0444 deploy/edge/admin-denylist.caddy /etc/caddy/denylist/admin-denylist.caddy
COPY --chown=0:0 --chmod=0444 deploy/edge/automatic-tls.caddy /etc/caddy/tls/automatic.caddy
COPY --chown=0:0 --chmod=0555 deploy/edge/entrypoint.sh /usr/local/bin/truf-edge-entrypoint

USER 10001:10001
ENTRYPOINT ["/usr/local/bin/truf-edge-entrypoint"]
CMD []

FROM edge AS edge-e2e

USER 0:0
RUN chmod 0644 /etc/caddy/Caddyfile \
    && sed -i 's#^[[:space:]]*admin unix//run/caddy-admin.sock$#\tadmin 127.0.0.1:2019#' /etc/caddy/Caddyfile \
    && chmod 0444 /etc/caddy/Caddyfile \
    && grep -Fx '	admin 127.0.0.1:2019' /etc/caddy/Caddyfile >/dev/null
USER 10001:10001
