From 41c257cc78bbda7872a8413a3412e4b0d135ffc8 Mon Sep 17 00:00:00 2001 From: Kamiel Ahmadpour Date: Wed, 13 Nov 2024 12:09:10 +0000 Subject: [PATCH] fix: do not generate plan IDs for v2 see: https://gravitee.atlassian.net/browse/GKO-772 fix: set default syncFrom for v4 APIs see: https://gravitee.atlassian.net/browse/GKO-771 fix: do no set plan IDs for V2 APis see: https://gravitee.atlassian.net/browse/GKO-772 --- api/v1alpha1/apiv2definition_types.go | 4 ++-- controllers/apim/apidefinition/internal/update.go | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/api/v1alpha1/apiv2definition_types.go b/api/v1alpha1/apiv2definition_types.go index 6b10dc510..e244385b0 100644 --- a/api/v1alpha1/apiv2definition_types.go +++ b/api/v1alpha1/apiv2definition_types.go @@ -186,8 +186,8 @@ func (api *ApiDefinition) generateEmptyPlanIDs() { plan.CrossID = uuid.FromStrings(api.Spec.ID, separator, plan.Name) } - if plan.ID == "" { - plan.ID = uuid.FromStrings(plan.CrossID, separator, plan.Name) + if id, ok := api.Status.Plans[plan.CrossID]; ok { + plan.ID = id } } } diff --git a/controllers/apim/apidefinition/internal/update.go b/controllers/apim/apidefinition/internal/update.go index a11fc7898..9e7b2ac2d 100644 --- a/controllers/apim/apidefinition/internal/update.go +++ b/controllers/apim/apidefinition/internal/update.go @@ -80,6 +80,7 @@ func createOrUpdateV2(ctx context.Context, apiDefinition *v1alpha1.ApiDefinition } if spec.IsLocal { + retrieveMgmtPlanIds(spec, status) return updateConfigMap(ctx, cp) } @@ -136,3 +137,14 @@ func createOrUpdateV4(ctx context.Context, apiDefinition *v1alpha1.ApiV4Definiti } return nil } + +// Retrieve the plan ids from the API CRD status. +func retrieveMgmtPlanIds(spec *v1alpha1.ApiDefinitionV2Spec, status *base.Status) { + plans := spec.Plans + planIds := status.Plans + + for _, plan := range plans { + plan.ID = planIds[plan.CrossID] + plan.Api = &status.ID + } +}