Composable monorepo CI fixes: - Add empty go.sum.tmpl files for pkg, service, worker, and cli components - Fix Dockerfile.tmpl glob patterns (COPY go.work.sum* is invalid in Kaniko) - Add deps step to CI that runs go work sync and go mod tidy before builds - Fix scalar-go dependency version (v0.1.2 doesn't exist, use v0.13.0) Health endpoint improvements: - Add registry health check (zot OCI /v2/ endpoint) - Add health metrics for CI, registry, and Git - Add /health/ci endpoint for Woodpecker health Visual verification scaffolding: - Add Playwright pod and scripts ConfigMap - Add vision.md and implementation breakdown plan Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
31 lines
683 B
Cheetah
31 lines
683 B
Cheetah
# Build stage
|
|
FROM golang:1.23-alpine AS builder
|
|
|
|
RUN apk add --no-cache git
|
|
|
|
# Configure Go workspace and private modules
|
|
ENV GOPRIVATE=git.threesix.ai/*
|
|
ENV GOWORK=/app/go.work
|
|
|
|
WORKDIR /app
|
|
|
|
# Copy go workspace and all source (workspace deps are local)
|
|
COPY go.work ./
|
|
COPY go.work.sum ./
|
|
COPY pkg/ ./pkg/
|
|
COPY workers/{{COMPONENT_NAME}}/ ./workers/{{COMPONENT_NAME}}/
|
|
|
|
# Build from workspace root
|
|
RUN CGO_ENABLED=0 go build -o /{{COMPONENT_NAME}} ./workers/{{COMPONENT_NAME}}/cmd/worker
|
|
|
|
# Production stage
|
|
FROM alpine:3.19
|
|
|
|
RUN apk add --no-cache ca-certificates tzdata
|
|
|
|
WORKDIR /
|
|
|
|
COPY --from=builder /{{COMPONENT_NAME}} /{{COMPONENT_NAME}}
|
|
|
|
ENTRYPOINT ["/{{COMPONENT_NAME}}"]
|