From 4116b53e867fac659c43a3b9ca5cf112bbd101f4 Mon Sep 17 00:00:00 2001 From: Derek Nola Date: Mon, 15 Dec 2025 13:57:04 -0800 Subject: [PATCH] Override DefaultHelmJob at build time (#13351) * Override DefaultHelmJob at build time * Bump klipper-helm airgap version Signed-off-by: Derek Nola --- pkg/server/server.go | 6 ++---- scripts/airgap/image-list.txt | 2 +- scripts/build | 3 +++ scripts/version.sh | 2 ++ 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/pkg/server/server.go b/pkg/server/server.go index 1f80d2ec131..b9df3bf0b68 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -41,8 +41,6 @@ import ( clientset "k8s.io/client-go/kubernetes" ) -var DefaultHelmJobImage = "rancher/klipper-helm:v0.9.10-build20251111" - func ResolveDataDir(dataDir string) (string, error) { dataDir, err := datadir.Resolve(dataDir) return filepath.Join(dataDir, "server"), err @@ -221,11 +219,11 @@ func coreControllers(ctx context.Context, sc *Context, config *Config) error { } // Apply SystemDefaultRegistry setting to Helm before starting controllers. - // Additionally, set the helm job image to the immutable default image, internally helm-controller default to latest. + // Internally helm-controller defaults to latest tag, but we inject a immutable version at build time. if config.ControlConfig.HelmJobImage != "" { helmchart.DefaultJobImage = config.ControlConfig.HelmJobImage } else if config.ControlConfig.SystemDefaultRegistry != "" { - helmchart.DefaultJobImage = config.ControlConfig.SystemDefaultRegistry + "/" + DefaultHelmJobImage + helmchart.DefaultJobImage = config.ControlConfig.SystemDefaultRegistry + "/" + helmchart.DefaultJobImage } if sc.Helm != nil { diff --git a/scripts/airgap/image-list.txt b/scripts/airgap/image-list.txt index 5c974d106be..410d89ff169 100644 --- a/scripts/airgap/image-list.txt +++ b/scripts/airgap/image-list.txt @@ -1,4 +1,4 @@ -docker.io/rancher/klipper-helm:v0.9.10-build20251111 +docker.io/rancher/klipper-helm:v0.9.12-build20251215 docker.io/rancher/klipper-lb:v0.4.13 docker.io/rancher/local-path-provisioner:v0.0.32 docker.io/rancher/mirrored-coredns-coredns:1.13.1 diff --git a/scripts/build b/scripts/build index d145cdac834..3c9bc511d60 100755 --- a/scripts/build +++ b/scripts/build @@ -16,6 +16,7 @@ PKG_CNI_PLUGINS="github.com/containernetworking/plugins" PKG_KUBE_ROUTER="github.com/cloudnativelabs/kube-router/v2" PKG_CRI_DOCKERD="github.com/Mirantis/cri-dockerd" PKG_ETCD="go.etcd.io/etcd" +PKG_HELM_CONTROLLER="github.com/k3s-io/helm-controller" buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ') @@ -53,6 +54,8 @@ VERSIONFLAGS=" -X ${PKG_CRI_DOCKERD}/cmd/version.BuildTime=${buildDate} -X ${PKG_ETCD}/api/v3/version.GitSHA=HEAD + + -X ${PKG_HELM_CONTROLLER}/pkg/controllers/chart.DefaultJobImage=rancher/klipper-helm:${VERSION_HELM_JOB} " if [ -n "${DEBUG}" ]; then GCFLAGS="-N -l" diff --git a/scripts/version.sh b/scripts/version.sh index a57fa91373d..2d35c786900 100755 --- a/scripts/version.sh +++ b/scripts/version.sh @@ -64,6 +64,8 @@ fi VERSION_ROOT="v0.15.0" +VERSION_HELM_JOB="v0.9.12-build20251215" + DEPENDENCIES_URL="https://raw.githubusercontent.com/kubernetes/kubernetes/${VERSION_K8S}/build/dependencies.yaml" VERSION_GOLANG="go"$(curl -sL "${DEPENDENCIES_URL}" | yq e '.dependencies[] | select(.name == "golang: upstream version").version' -)