From d0a891ec9785568c285c71fa47b19c3160a0bbbb Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Mon, 26 Feb 2024 00:25:14 -0800 Subject: [PATCH] Use unstructured to read fluxcd config (#7) Signed-off-by: Tamal Saha --- pkg/manager/helpers.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkg/manager/helpers.go b/pkg/manager/helpers.go index f11e9d50..3c99c8a9 100644 --- a/pkg/manager/helpers.go +++ b/pkg/manager/helpers.go @@ -20,10 +20,8 @@ import ( "context" "fmt" - fluxcnfv1alpha "github.com/kluster-manager/fluxcd-addon/apis/fluxcd/v1alpha1" - + "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/types" - "kubepack.dev/lib-helm/pkg/values" "open-cluster-management.io/addon-framework/pkg/addonfactory" agentapi "open-cluster-management.io/addon-framework/pkg/agent" "open-cluster-management.io/api/addon/v1alpha1" @@ -57,17 +55,21 @@ func GetConfigValues(kc client.Client) addonfactory.GetValuesFunc { continue } - fluxCDConfig := fluxcnfv1alpha.FluxCDConfig{} + var fluxCDConfig unstructured.Unstructured + fluxCDConfig.SetAPIVersion("fluxcd.open-cluster-management.io/v1alpha1") + fluxCDConfig.SetKind("FluxCDConfig") key := types.NamespacedName{Name: refConfig.Name, Namespace: refConfig.Namespace} if err := kc.Get(context.TODO(), key, &fluxCDConfig); err != nil { return nil, err } - vals, err := values.GetValuesDiff(fluxcnfv1alpha.FluxCDConfigSpec{}, fluxCDConfig.Spec) + vals, ok, err := unstructured.NestedMap(fluxCDConfig.UnstructuredContent(), "spec") if err != nil { return nil, err } - overrideValues = addonfactory.MergeValues(overrideValues, vals) + if ok { + overrideValues = addonfactory.MergeValues(overrideValues, vals) + } } data, err := FS.ReadFile("agent-manifests/flux2/values.yaml")