diff --git a/pkg/addons/adminconsole/adminconsole.go b/pkg/addons/adminconsole/adminconsole.go index 50b1691c11..fbab43f743 100644 --- a/pkg/addons/adminconsole/adminconsole.go +++ b/pkg/addons/adminconsole/adminconsole.go @@ -169,7 +169,7 @@ func (a *AdminConsole) GenerateHelmConfig(onlyDefaults bool) ([]eckinds.Chart, [ func (a *AdminConsole) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images } diff --git a/pkg/addons/applier.go b/pkg/addons/applier.go index 13c089c0a5..f3496038ef 100644 --- a/pkg/addons/applier.go +++ b/pkg/addons/applier.go @@ -158,85 +158,63 @@ func (a *Applier) GenerateHelmConfigsForRestore() ([]embeddedclusterv1beta1.Char func (a *Applier) GetBuiltinCharts() (map[string]embeddedclusterv1beta1.Helm, error) { builtinCharts := map[string]embeddedclusterv1beta1.Helm{} - vel, err := velero.New(defaults.VeleroNamespace, true, a.proxyEnv) - if err != nil { - return nil, fmt.Errorf("unable to create velero addon: %w", err) - } - velChart, velRepo, err := vel.GenerateHelmConfig(true) - if err != nil { - return nil, fmt.Errorf("unable to generate helm config for velero: %w", err) - } - builtinCharts["velero"] = embeddedclusterv1beta1.Helm{ - Repositories: velRepo, - Charts: velChart, - } - - reg, err := registry.New(defaults.RegistryNamespace, a.config, true, false, a.network) - if err != nil { - return nil, fmt.Errorf("unable to create registry addon: %w", err) - } - regChart, regRepo, err := reg.GenerateHelmConfig(true) + addons, err := a.loadBuiltIn() if err != nil { - return nil, fmt.Errorf("unable to generate helm config for registry: %w", err) - } - builtinCharts["registry"] = embeddedclusterv1beta1.Helm{ - Repositories: regRepo, - Charts: regChart, - } - - regHA, err := registry.New(defaults.RegistryNamespace, a.config, true, true, a.network) - if err != nil { - return nil, fmt.Errorf("unable to create registry addon: %w", err) - } - regHAChart, regHARepo, err := regHA.GenerateHelmConfig(true) - if err != nil { - return nil, fmt.Errorf("unable to generate helm config for registry: %w", err) - } - builtinCharts["registry-ha"] = embeddedclusterv1beta1.Helm{ - Repositories: regHARepo, - Charts: regHAChart, + return nil, fmt.Errorf("unable to load addons: %w", err) } - seaweed, err := seaweedfs.New(defaults.SeaweedFSNamespace, a.config, true) - if err != nil { - return nil, fmt.Errorf("unable to create seaweedfs addon: %w", err) - } - seaweedChart, seaweedRepo, err := seaweed.GenerateHelmConfig(true) - if err != nil { - return nil, fmt.Errorf("unable to generate helm config for seaweedfs: %w", err) - } - builtinCharts["seaweedfs"] = embeddedclusterv1beta1.Helm{ - Repositories: seaweedRepo, - Charts: seaweedChart, + for name, addon := range addons { + chart, repo, err := addon.GenerateHelmConfig(true) + if err != nil { + return nil, fmt.Errorf("unable to generate helm config for %s: %w", name, err) + } + builtinCharts[name] = embeddedclusterv1beta1.Helm{ + Repositories: repo, + Charts: chart, + } } return builtinCharts, nil } func (a *Applier) GetImages() ([]string, error) { - additionalImages := []string{} + images := []string{} addons, err := a.load() if err != nil { return nil, fmt.Errorf("unable to load addons: %w", err) } + builtInAddons, err := a.loadBuiltIn() + if err != nil { + return nil, fmt.Errorf("unable to load built-in addons: %w", err) + } for _, addon := range addons { - additionalImages = append(additionalImages, addon.GetImages()...) + images = append(images, addon.GetImages()...) + } + for _, addon := range builtInAddons { + images = append(images, addon.GetImages()...) } - return additionalImages, nil + return images, nil } func (a *Applier) GetAdditionalImages() ([]string, error) { - additionalImages := []string{} + images := []string{} addons, err := a.load() if err != nil { return nil, fmt.Errorf("unable to load addons: %w", err) } + builtInAddons, err := a.loadBuiltIn() + if err != nil { + return nil, fmt.Errorf("unable to load built-in addons: %w", err) + } for _, addon := range addons { - additionalImages = append(additionalImages, addon.GetAdditionalImages()...) + images = append(images, addon.GetAdditionalImages()...) + } + for _, addon := range builtInAddons { + images = append(images, addon.GetAdditionalImages()...) } - return additionalImages, nil + return images, nil } // ProtectedFields returns the protected fields for all the embedded charts. @@ -328,6 +306,37 @@ func (a *Applier) load() ([]AddOn, error) { return addons, nil } +// load instantiates and returns all addon appliers. +func (a *Applier) loadBuiltIn() (map[string]AddOn, error) { + addons := map[string]AddOn{} + + vel, err := velero.New(defaults.VeleroNamespace, true, a.proxyEnv) + if err != nil { + return nil, fmt.Errorf("unable to create velero addon: %w", err) + } + addons["velero"] = vel + + reg, err := registry.New(defaults.RegistryNamespace, a.config, true, false, a.network) + if err != nil { + return nil, fmt.Errorf("unable to create registry addon: %w", err) + } + addons["registry"] = reg + + regHA, err := registry.New(defaults.RegistryNamespace, a.config, true, true, a.network) + if err != nil { + return nil, fmt.Errorf("unable to create registry addon: %w", err) + } + addons["registry-ha"] = regHA + + seaweed, err := seaweedfs.New(defaults.SeaweedFSNamespace, a.config, true) + if err != nil { + return nil, fmt.Errorf("unable to create seaweedfs addon: %w", err) + } + addons["seaweedfs"] = seaweed + + return addons, nil +} + // loadForRestore instantiates and returns addon appliers for restore operations. func (a *Applier) loadForRestore() ([]AddOn, error) { addons := []AddOn{} diff --git a/pkg/addons/embeddedclusteroperator/embeddedclusteroperator.go b/pkg/addons/embeddedclusteroperator/embeddedclusteroperator.go index 00cd07557d..7aaba39008 100644 --- a/pkg/addons/embeddedclusteroperator/embeddedclusteroperator.go +++ b/pkg/addons/embeddedclusteroperator/embeddedclusteroperator.go @@ -152,7 +152,7 @@ func (e *EmbeddedClusterOperator) GenerateHelmConfig(onlyDefaults bool) ([]embed func (a *EmbeddedClusterOperator) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images } diff --git a/pkg/addons/openebs/openebs.go b/pkg/addons/openebs/openebs.go index 9b156c2e00..ffb3fc89a1 100644 --- a/pkg/addons/openebs/openebs.go +++ b/pkg/addons/openebs/openebs.go @@ -91,7 +91,7 @@ func (o *OpenEBS) GenerateHelmConfig(onlyDefaults bool) ([]eckinds.Chart, []ecki func (a *OpenEBS) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images } diff --git a/pkg/addons/registry/registry.go b/pkg/addons/registry/registry.go index e13117ccef..5997c7ebf3 100644 --- a/pkg/addons/registry/registry.go +++ b/pkg/addons/registry/registry.go @@ -149,7 +149,7 @@ func (o *Registry) GenerateHelmConfig(onlyDefaults bool) ([]eckinds.Chart, []eck func (a *Registry) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images } diff --git a/pkg/addons/seaweedfs/seaweedfs.go b/pkg/addons/seaweedfs/seaweedfs.go index 699d35564a..7f1cbc1752 100644 --- a/pkg/addons/seaweedfs/seaweedfs.go +++ b/pkg/addons/seaweedfs/seaweedfs.go @@ -96,7 +96,7 @@ func (o *SeaweedFS) GenerateHelmConfig(onlyDefaults bool) ([]eckinds.Chart, []ec func (a *SeaweedFS) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images } diff --git a/pkg/addons/velero/velero.go b/pkg/addons/velero/velero.go index 1ec06e65a8..3c40df9249 100644 --- a/pkg/addons/velero/velero.go +++ b/pkg/addons/velero/velero.go @@ -108,7 +108,7 @@ func (o *Velero) GenerateHelmConfig(onlyDefaults bool) ([]eckinds.Chart, []eckin func (a *Velero) GetImages() []string { var images []string for image, tag := range Metadata.Images { - images = append(images, fmt.Sprintf("%s:%s", image, tag)) + images = append(images, fmt.Sprintf("proxy.replicated.com/anonymous/%s:%s", image, tag)) } return images }