From dbe2771a563c56d9dfc3008e3f1b22056beaa107 Mon Sep 17 00:00:00 2001 From: f41gh7 Date: Mon, 25 Jul 2022 04:41:07 +0200 Subject: [PATCH] follow-up after ab03773345c916bcc2bc1f23fb1269151c357dd6 --- controllers/factory/vmagent.go | 2 +- controllers/factory/vmauth.go | 2 +- internal/config/config.go | 15 +++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/controllers/factory/vmagent.go b/controllers/factory/vmagent.go index c5c9caa7..b6cb5bce 100644 --- a/controllers/factory/vmagent.go +++ b/controllers/factory/vmagent.go @@ -1108,7 +1108,7 @@ func buildConfigReloaderContainer(cr *victoriametricsv1beta1.VMAgent, c *config. configReloadArgs := buildConfigReloaderArgs(cr, c) cntr := corev1.Container{ Name: "config-reloader", - Image: fmt.Sprintf("%s/%s", c.ContainerRegistry, c.VMAgentDefault.ConfigReloadImage), + Image: config.FormatContainerImage(c.ContainerRegistry, c.VMAgentDefault.ConfigReloadImage), TerminationMessagePolicy: corev1.TerminationMessageFallbackToLogsOnError, Env: []corev1.EnvVar{ { diff --git a/controllers/factory/vmauth.go b/controllers/factory/vmauth.go index a966ffac..0b37ceff 100644 --- a/controllers/factory/vmauth.go +++ b/controllers/factory/vmauth.go @@ -462,7 +462,7 @@ func buildVMAuthConfigReloaderContainer(cr *victoriametricsv1beta1.VMAuth, c *co configReloader := corev1.Container{ Name: "config-reloader", - Image: fmt.Sprintf("%s/%s", c.ContainerRegistry, c.VMAuthDefault.ConfigReloadImage), + Image: config.FormatContainerImage(c.ContainerRegistry, c.VMAuthDefault.ConfigReloadImage), TerminationMessagePolicy: corev1.TerminationMessageFallbackToLogsOnError, Env: []corev1.EnvVar{ { diff --git a/internal/config/config.go b/internal/config/config.go index 7cf3919f..f7441857 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -395,3 +395,18 @@ type Namespaces struct { // allow list for prometheus/alertmanager custom resources } + +// FormatContainerImage returns container image with registry prefix if needed. +func FormatContainerImage(globalRepo string, containerImage string) string { + if globalRepo == "docker.io" { + // no need to add global repo + return containerImage + } + if !strings.HasPrefix(containerImage, "quay.io") { + if !strings.HasSuffix(globalRepo, "/") { + globalRepo += "/" + } + return globalRepo + "/" + containerImage + } + return globalRepo + containerImage[len("quay.io"):] +}