From e200425876a1da9c636a62e8c8748206f50a9488 Mon Sep 17 00:00:00 2001 From: Vitor Savian Date: Wed, 28 Jun 2023 12:31:58 -0300 Subject: [PATCH] Adding cli to custom klipper helm image (#7682) Adding cli to custom klipper helm image Signed-off-by: Vitor Savian (cherry picked from commit 0809187cffc3dbdb94667b32fd6b7d2274c164bb) Signed-off-by: Brad Davidson --- pkg/cli/cmds/server.go | 6 ++++++ pkg/cli/server/server.go | 1 + pkg/daemons/config/types.go | 1 + pkg/server/server.go | 4 +++- 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/pkg/cli/cmds/server.go b/pkg/cli/cmds/server.go index 3d1dea2b0c48..1e4fbc316301 100644 --- a/pkg/cli/cmds/server.go +++ b/pkg/cli/cmds/server.go @@ -45,6 +45,7 @@ type Server struct { DisableAgent bool KubeConfigOutput string KubeConfigMode string + HelmJobImage string TLSSan cli.StringSlice BindAddress string EnablePProf bool @@ -252,6 +253,11 @@ var ServerFlags = []cli.Flag{ Destination: &ServerConfig.KubeConfigMode, EnvVar: version.ProgramUpper + "_KUBECONFIG_MODE", }, + &cli.StringFlag{ + Name: "helm-job-image", + Usage: "(helm) Default image to use for helm jobs", + Destination: &ServerConfig.HelmJobImage, + }, ServerToken, &cli.StringFlag{ Name: "token-file", diff --git a/pkg/cli/server/server.go b/pkg/cli/server/server.go index ff6cdefa8de8..cffa307a4da0 100644 --- a/pkg/cli/server/server.go +++ b/pkg/cli/server/server.go @@ -128,6 +128,7 @@ func run(app *cli.Context, cfg *cmds.Server, leaderControllers server.CustomCont serverConfig.ControlConfig.DataDir = cfg.DataDir serverConfig.ControlConfig.KubeConfigOutput = cfg.KubeConfigOutput serverConfig.ControlConfig.KubeConfigMode = cfg.KubeConfigMode + serverConfig.ControlConfig.HelmJobImage = cfg.HelmJobImage serverConfig.ControlConfig.Rootless = cfg.Rootless serverConfig.ControlConfig.ServiceLBNamespace = cfg.ServiceLBNamespace serverConfig.ControlConfig.SANs = util.SplitStringSlice(cfg.TLSSan) diff --git a/pkg/daemons/config/types.go b/pkg/daemons/config/types.go index be7e06af3c58..d643899c15d2 100644 --- a/pkg/daemons/config/types.go +++ b/pkg/daemons/config/types.go @@ -168,6 +168,7 @@ type Control struct { ServiceNodePortRange *utilnet.PortRange KubeConfigOutput string KubeConfigMode string + HelmJobImage string DataDir string Datastore endpoint.Config `json:"-"` Disables map[string]bool diff --git a/pkg/server/server.go b/pkg/server/server.go index ab549c232359..03a0d30c5d19 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -208,7 +208,9 @@ func coreControllers(ctx context.Context, sc *Context, config *Config) error { } // apply SystemDefaultRegistry setting to Helm before starting controllers - if config.ControlConfig.SystemDefaultRegistry != "" { + if config.ControlConfig.HelmJobImage != "" { + helmchart.DefaultJobImage = config.ControlConfig.HelmJobImage + } else if config.ControlConfig.SystemDefaultRegistry != "" { helmchart.DefaultJobImage = config.ControlConfig.SystemDefaultRegistry + "/" + helmchart.DefaultJobImage }