Deploying go-otel with k8s-helper
Gitea Actions builds and pushes versioned and latest matst80/otel-debug
images on pushes to main, uploads the matching source maps, and then sends a
signed reconcile webhook. The agent applies the explicit k8s/kustomization.yaml
resource list into namespace monitoring.
One-time setup
The k8s-helper GitOps CRDs and agent must be installed. The GitSource reuses
dev/gitea-k8s-helper, whose token must have read access to this repository.
Configure a Gitea push-only webhook for this repo at
https://ui.k6n.net/api/gitops/webhooks/gitea, using the same secret as
K8SHELPER_GITOPS_WEBHOOK_SECRET on the dashboard. Add that value as the Gitea
Actions secret GITOPS_WEBHOOK_SECRET too; a user- or organization-level
secret can be shared by other repos.
The runner uses its existing Docker login. Bootstrap once with
kubectl apply -f gitops/ after confirming the monitoring namespace and the
otel-sourcemaps PVC already exist. The PVC is deliberately excluded from the
managed kustomization because its lifecycle was called out for separate review.
The ClickHouse manifests, auth-dev resources, and ingress-catchall work are also
excluded; this kustomization lists only the receiver Deployment, Service, and
Ingress resources. Do not run Flux and k8s-helper against the same resources at
the same time; check for an active flux-system/go-otel Kustomization before
bootstrapping this controller.
Prune is initially disabled. Inspect the GitOps inventory and applied revision before changing it.