From 929a4ca9bed2da7d4b9827fb7e0dc5231e6d856b Mon Sep 17 00:00:00 2001 From: Kyle Wuolle Date: Tue, 8 Oct 2024 15:32:38 -0700 Subject: [PATCH] Make the createRelease value actually not install the release. Also, change the chart version code to match up with what exists in the helm repo --- config/dev/hmc_values.yaml | 2 +- internal/controller/release_controller.go | 14 +++++++++----- internal/utils/release.go | 9 +++++++++ 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/config/dev/hmc_values.yaml b/config/dev/hmc_values.yaml index 68bdf3b1..ea8e4958 100644 --- a/config/dev/hmc_values.yaml +++ b/config/dev/hmc_values.yaml @@ -4,5 +4,5 @@ image: controller: defaultRegistryURL: oci://hmc-local-registry:5000/charts insecureRegistry: true - createRelease: false + createRelease: true createTemplates: false diff --git a/internal/controller/release_controller.go b/internal/controller/release_controller.go index 8736e148..7d32f495 100644 --- a/internal/controller/release_controller.go +++ b/internal/controller/release_controller.go @@ -106,10 +106,14 @@ func (r *ReleaseReconciler) ensureManagement(ctx context.Context) error { if !apierrors.IsNotFound(err) { return fmt.Errorf("failed to get %s Management object: %w", hmc.TemplateManagementName, err) } - mgmtObj.Spec.Release, err = r.getCurrentReleaseName(ctx) - if err != nil { - return err + + if r.CreateRelease { + mgmtObj.Spec.Release, err = r.getCurrentReleaseName(ctx) + if err != nil { + return err + } } + if err := mgmtObj.Spec.SetProvidersDefaults(); err != nil { return err } @@ -157,7 +161,7 @@ func (r *ReleaseReconciler) reconcileHMCTemplates(ctx context.Context, req ctrl. l.Info("Templates creation is disabled") return nil } - if initialReconcile(req) && !r.CreateRelease { + if !r.CreateRelease || initialReconcile(req) { l.Info("Initial creation of HMC Release is skipped") return nil } @@ -206,7 +210,7 @@ func (r *ReleaseReconciler) reconcileHMCTemplates(ctx context.Context, req ctrl. helmChart.Labels[hmc.HMCManagedLabelKey] = hmc.HMCManagedLabelValue helmChart.Spec = sourcev1.HelmChartSpec{ Chart: r.HMCTemplatesChartName, - Version: version, + Version: utils.ChartVersionFromVersion(version), SourceRef: sourcev1.LocalHelmChartSourceReference{ Kind: sourcev1.HelmRepositoryKind, Name: defaultRepoName, diff --git a/internal/utils/release.go b/internal/utils/release.go index 3acc85ce..8162dbea 100644 --- a/internal/utils/release.go +++ b/internal/utils/release.go @@ -20,6 +20,15 @@ func ReleaseNameFromVersion(version string) string { return "hmc-" + strings.ReplaceAll(strings.TrimPrefix(version, "v"), ".", "-") } +func ChartVersionFromVersion(version string) string { + index := strings.Index(version, "-") + cut := strings.TrimPrefix(version, "v") + if index >= 1 { + cut = cut[:index-1] + } + return cut +} + func TemplatesChartFromReleaseName(releaseName string) string { return releaseName + "-tpl" }