Add pdbmux: merging PuppetDB proxy daemon
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful

Split out from node-lookup PR #17 into its own repo. pdbmux presents a
single merged PuppetDB v4 query surface over the old (Consul) and new
(k8s) PuppetDBs during the VM to k8s migration, and is deployed in-cluster
via argocd-apps as a container image.
This commit is contained in:
benvin
2026-07-24 23:24:35 +10:00
parent 9eabb06ba0
commit dda6b8c8c8
18 changed files with 1909 additions and 2 deletions
+24
View File
@@ -0,0 +1,24 @@
# Container image for pdbmux, the merging PuppetDB proxy daemon. pdbmux is a
# k8s-only service (deployed via argocd-apps), so it ships as a distroless
# static image rather than an RPM.
FROM golang:1.25-alpine AS builder
RUN apk add --no-cache git
WORKDIR /build
COPY go.mod go.sum ./
RUN go mod download
COPY . .
ARG VERSION=dev
RUN CGO_ENABLED=0 go build -ldflags="-s -w -X main.version=${VERSION}" -o pdbmux .
FROM gcr.io/distroless/static-debian12:nonroot
COPY --from=builder /build/pdbmux /usr/local/bin/pdbmux
EXPOSE 8080
ENTRYPOINT ["pdbmux", "serve"]