From 2d8c76e8654e29bbabc83dab0e858cfed6e7b31e Mon Sep 17 00:00:00 2001 From: Giuseppe Iannelli <94362884+g-iannelli@users.noreply.github.com> Date: Thu, 30 Apr 2026 16:58:56 +0200 Subject: [PATCH] fix: fallback to spec.kubernetes.vpcId when output.json has no vpc_id --- .../ekscluster/common/distribution.go | 36 +++++++++---------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/internal/apis/kfd/v1alpha2/ekscluster/common/distribution.go b/internal/apis/kfd/v1alpha2/ekscluster/common/distribution.go index 2447d571a..ef81fcb72 100644 --- a/internal/apis/kfd/v1alpha2/ekscluster/common/distribution.go +++ b/internal/apis/kfd/v1alpha2/ekscluster/common/distribution.go @@ -142,34 +142,30 @@ func (d *Distribution) extractVpcIDFromPrevPhases(fMerger *merge.Merger) (string var infraOut terraform.OutputJSON if err := json.Unmarshal(infraOutJSON, &infraOut); err == nil { - if infraOut["vpc_id"] == nil { - return vpcID, ErrVpcIDNotFound - } + if infraOut["vpc_id"] != nil { + vpcIDOut, ok := infraOut["vpc_id"].Value.(string) + if !ok { + return vpcID, ErrCastingVpcIDToStr + } - vpcIDOut, ok := infraOut["vpc_id"].Value.(string) - if !ok { - return vpcID, ErrCastingVpcIDToStr + return vpcIDOut, nil } - - vpcID = vpcIDOut } - } else { - fModel := merge.NewDefaultModel((*fMerger.GetBase()).Content(), ".spec.kubernetes") + } - kubeFromFuryctlConf, err := fModel.Get() - if err != nil { - return vpcID, fmt.Errorf("error getting kubernetes from furyctl config: %w", err) - } + fModel := merge.NewDefaultModel((*fMerger.GetBase()).Content(), ".spec.kubernetes") - vpcFromFuryctlConf, ok := kubeFromFuryctlConf["vpcId"].(string) - if !ok && !d.DryRun { - return vpcID, ErrCastingVpcIDToStr - } + kubeFromFuryctlConf, err := fModel.Get() + if err != nil { + return vpcID, fmt.Errorf("error getting kubernetes from furyctl config: %w", err) + } - vpcID = vpcFromFuryctlConf + vpcFromFuryctlConf, ok := kubeFromFuryctlConf["vpcId"].(string) + if !ok && !d.DryRun { + return vpcID, ErrCastingVpcIDToStr } - return vpcID, nil + return vpcFromFuryctlConf, nil } func (d *Distribution) PreparePostTerraform(