From 070d612a3d51041ebc97deda91556ce4c859f77f Mon Sep 17 00:00:00 2001 From: nuclearwu Date: Wed, 28 Sep 2022 10:58:29 +0800 Subject: [PATCH] Fix: it does not check the same name for 'vela env init' (#4796) Signed-off-by: wuzhongjian Signed-off-by: wuzhongjian --- pkg/utils/env/env.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkg/utils/env/env.go b/pkg/utils/env/env.go index 6a798a598..cdfe7cb46 100644 --- a/pkg/utils/env/env.go +++ b/pkg/utils/env/env.go @@ -73,6 +73,17 @@ func CreateEnv(envArgs *types.EnvMeta) error { } } ctx := context.TODO() + + var nsList v1.NamespaceList + err = c.List(ctx, &nsList, client.MatchingLabels{oam.LabelControlPlaneNamespaceUsage: oam.VelaNamespaceUsageEnv, + oam.LabelNamespaceOfEnvName: envArgs.Name}) + if err != nil { + return err + } + if len(nsList.Items) > 0 { + return fmt.Errorf("env name %s already exists", envArgs.Name) + } + namespace, err := utils.GetNamespace(ctx, c, envArgs.Namespace) if err != nil && !apierrors.IsNotFound(err) { return err