# Build stage
FROM golang:latest AS builder
WORKDIR /app
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build -v -o svg-templater ./cmd/svg-templater

# Final stage
FROM debian:bookworm-slim
WORKDIR /root/
EXPOSE 3000
VOLUME ["/var/lib/svg-templater"]
RUN apt update && apt install -y curl tar \
    && curl -L https://github.com/linebender/resvg/releases/download/v0.47.0/resvg-linux-x86_64.tar.gz | tar -xz \
    && mv resvg /usr/local/bin/resvg \
    && chmod +x /usr/local/bin/resvg
COPY --from=builder /app/svg-templater /usr/local/bin/svg-templater
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
