From ab7ab7abf2fa217645107e34e93f561a3389cfa0 Mon Sep 17 00:00:00 2001 From: Naeel Date: Sat, 18 Jul 2026 13:33:59 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20S3=20refSvcId=3D12=20=E2=80=94=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B7=D1=80=D0=B5=D1=88=D0=B8=D1=82=D1=8C=20=D0=B8=D0=BC?= =?UTF-8?q?=D1=8F=20=D0=BD=D0=B0=D1=80=D0=B0=D0=B2=D0=BD=D0=B5=20=D1=81=20?= =?UTF-8?q?UUID,=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8F=205.1.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TOOLS/config/test/profile.env | 2 +- provider/internal/core/client.go | 11 +---------- .../resources_core/resource_diagnostics_required.go | 12 ------------ 3 files changed, 2 insertions(+), 23 deletions(-) diff --git a/TOOLS/config/test/profile.env b/TOOLS/config/test/profile.env index 008f4c6..e5820ed 100644 --- a/TOOLS/config/test/profile.env +++ b/TOOLS/config/test/profile.env @@ -3,7 +3,7 @@ NUBES_API_ENDPOINT="https://lk-api-gateway-test.ngcloud.ru/api/v1/svc" TOKEN_FILE="secrets/test.token" # Version -VERSION="5.1.2" +VERSION="5.1.3" # Docs generation — ONLY from docs_gen// (never from docs/) DOCS_GEN_DIR="provider/docs_gen/test" diff --git a/provider/internal/core/client.go b/provider/internal/core/client.go index 9cab347..7434f1a 100644 --- a/provider/internal/core/client.go +++ b/provider/internal/core/client.go @@ -1158,16 +1158,7 @@ func (c *UniversalClient) resolveRefSvcParamValues(ctx context.Context, opParams for paramId, value := range params { newValue := value if refSvcId, ok := refById[paramId]; ok { - if refSvcId == 12 { - if !isUUIDLike(value) { - return nil, fmt.Errorf("параметр %d должен быть UUID (S3 Object Storage, serviceId=12): %s", paramId, value) - } - // FIX(uuid-case): нормализуем UUID к lowercase для отправки в API. - // Пользователь мог написать "6214BA32-...", API принимает оба варианта, - // но сам всегда возвращает нижний регистр. Регистр пользователя будет - // восстановлен в state после RefreshResourceState (generated resource). - newValue = strings.ToLower(value) - } else if strings.TrimSpace(value) == "" { + if strings.TrimSpace(value) == "" { // Опциональный ref-параметр не задан — оставляем пустым newValue = "" } else if !isUUIDLike(value) { diff --git a/provider/internal/resources_core/resource_diagnostics_required.go b/provider/internal/resources_core/resource_diagnostics_required.go index 56ef656..d88e0a1 100644 --- a/provider/internal/resources_core/resource_diagnostics_required.go +++ b/provider/internal/resources_core/resource_diagnostics_required.go @@ -453,9 +453,6 @@ func isValidRefValue(options []core.RefServiceInstanceOption, refSvcId int, valu if strings.EqualFold(strings.TrimSpace(opt.InstanceUID), value) { return true } - if refSvcId == 12 { - continue - } if strings.EqualFold(strings.TrimSpace(opt.DisplayName), value) { return true } @@ -465,21 +462,12 @@ func isValidRefValue(options []core.RefServiceInstanceOption, refSvcId int, valu func formatRefOptions(options []core.RefServiceInstanceOption, refSvcId int, limit int) string { if len(options) == 0 { - if refSvcId == 12 { - return "требуется UUID существующего инстанса" - } return "список пуст" } formatted := make([]string, 0, len(options)) for _, opt := range options { uid := strings.TrimSpace(opt.InstanceUID) name := strings.TrimSpace(opt.DisplayName) - if refSvcId == 12 { - if uid != "" { - formatted = append(formatted, uid) - } - continue - } if name != "" && uid != "" { formatted = append(formatted, name+" ("+uid+")") } else if uid != "" {