Localize kube-state-metrics container (Dockerfile + nix) #327

Merged
eblume merged 2 commits from localize-kube-state-metrics into main 2026-04-07 16:09:26 -07:00
Owner

Summary

  • Build kube-state-metrics v2.18.0 locally from forge mirror, replacing upstream registry.k8s.io image
  • Dockerfile (two-stage Go build) for indri/minikube
  • default.nix (buildGoModule + buildLayeredImage) for ringtail/k3s
  • Both kustomization files updated with newName pointing to local registry

Verification

  • Nix build succeeded on ringtail (nix-build → 10-layer image)
  • Dockerfile build succeeded locally (dagger call build → ~2min)
  • container-version-check --all-files passes (2.18.0 consistent across Dockerfile, nix, service-versions.yaml)
  • CI builds container images from this branch
  • Update kustomization newTag with SHA-tagged version from CI
  • ArgoCD sync on both clusters

Test plan

  • Trigger CI build: mise run container-build-and-release kube-state-metrics
  • Verify tags: mise run container-list kube-state-metrics
  • Update newTag in kustomization files with CI-produced tag
  • Sync ArgoCD on indri: argocd app sync kube-state-metrics
  • Sync ArgoCD on ringtail: argocd app sync kube-state-metrics --context=k3s-ringtail (note: argocd uses its own auth, not kubectl context)
  • Verify metrics still flowing to Prometheus
## Summary - Build kube-state-metrics v2.18.0 locally from forge mirror, replacing upstream `registry.k8s.io` image - Dockerfile (two-stage Go build) for indri/minikube - default.nix (buildGoModule + buildLayeredImage) for ringtail/k3s - Both kustomization files updated with `newName` pointing to local registry ## Verification - [x] Nix build succeeded on ringtail (`nix-build` → 10-layer image) - [x] Dockerfile build succeeded locally (`dagger call build` → ~2min) - [x] `container-version-check --all-files` passes (2.18.0 consistent across Dockerfile, nix, service-versions.yaml) - [ ] CI builds container images from this branch - [ ] Update kustomization `newTag` with SHA-tagged version from CI - [ ] ArgoCD sync on both clusters ## Test plan - Trigger CI build: `mise run container-build-and-release kube-state-metrics` - Verify tags: `mise run container-list kube-state-metrics` - Update newTag in kustomization files with CI-produced tag - Sync ArgoCD on indri: `argocd app sync kube-state-metrics` - Sync ArgoCD on ringtail: `argocd app sync kube-state-metrics --context=k3s-ringtail` (note: argocd uses its own auth, not kubectl context) - Verify metrics still flowing to Prometheus
Build kube-state-metrics v2.18.0 from forge mirror, replacing upstream
registry.k8s.io image. Both indri (Dockerfile via Dagger) and ringtail
(nix via buildGoModule + buildLayeredImage) get locally built images.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
indri: v2.18.0-e2e35cc (Dockerfile)
ringtail: v2.18.0-e2e35cc-nix (nix)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
eblume merged commit f59f8859dc into main 2026-04-07 16:09:26 -07:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
eblume/blumeops!327
No description provided.