From 5730d98511f5543facf1922dcbf89fc3c91c90c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E8=BD=A9?= Date: Tue, 20 Sep 2022 22:43:33 +0800 Subject: [PATCH] fix(region): hcso duplicate role (#14999) --- pkg/multicloud/hcso/shell/role.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/multicloud/hcso/shell/role.go b/pkg/multicloud/hcso/shell/role.go index e562eabba5..9c9d673488 100644 --- a/pkg/multicloud/hcso/shell/role.go +++ b/pkg/multicloud/hcso/shell/role.go @@ -19,6 +19,7 @@ import ( "io/ioutil" "yunion.io/x/jsonutils" + "yunion.io/x/log" cloudid_api "yunion.io/x/onecloud/pkg/apis/cloudid" api "yunion.io/x/onecloud/pkg/apis/compute" @@ -56,8 +57,14 @@ func init() { PolicyType string Status string } + idMap := map[string]bool{} ret := []sRule{} for i := range roles { + if _, ok := idMap[roles[i].DisplayName]; ok { + log.Errorf("duplicate id: %s", roles[i].DisplayName) + continue + } + idMap[roles[i].DisplayName] = true ret = append(ret, sRule{ Name: roles[i].DisplayName, Id: roles[i].Id,