diff --git a/docs/README.md b/docs/README.md index 6e8de36..cac5f06 100644 --- a/docs/README.md +++ b/docs/README.md @@ -148,6 +148,15 @@ // ``` + +#### ИспользоватьПровайдерVAULT +```bsl +// Добавляет и включает встроенный провайдер VAULT +// +// Параметры: +// Приоритет - Число - Числовой приоритет выполнения провайдеры (по умолчанию 0) +// + #### АвтоНастройка ```bsl diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" index 2bafcce..b7c8105 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" @@ -75,7 +75,7 @@ Настройки = Новый Соответствие; - URL = СтрШаблон("%1/%2", Адрес, Запрос); + URL = СтрШаблон("%1/%2", СтрУбратьСКонца(Адрес, "/"), Запрос); Заголовки = Новый Соответствие; Если ЗначениеЗаполнено(Токен) Тогда @@ -134,4 +134,8 @@ КонецПроцедуры +Функция СтрУбратьСКонца(Знач Стр, Знач СтрПоиска) + Возврат ?(СтрЗаканчиваетсяНа(Стр, СтрПоиска), Лев(Стр, СтрДлина(Стр) - СтрДлина(СтрПоиска)), Стр); +КонецФункции + Лог = Логирование.ПолучитьЛог("oscript.lib.configor.vault"); diff --git "a/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" "b/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" index 39a60d6..eede260 100644 --- "a/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" +++ "b/tests/\320\237\321\200\320\276\320\262\320\260\320\271\320\264\320\265\321\200\320\237\320\260\321\200\320\260\320\274\320\265\321\202\321\200\320\276\320\262VAULT.os" @@ -17,14 +17,30 @@ КонецПроцедуры &Тест -Процедура ПроверитьПолучениеПараметровИзVault() Экспорт +Процедура ПроверитьПолучениеПараметровИзVaultСНормальнымАдресом() Экспорт - // Дано НастройкиVault = Новый Структура; НастройкиVault.Вставить("Адрес", АдресВина); НастройкиVault.Вставить("Токен", "VAULT_TOKEN"); - НастройкиVault.Вставить("Запрос", "v1/my_secret_store/super_secret"); + НастройкиVault.Вставить("Запрос", "my_secret_store/super_secret"); + + ПроверитьПолучениеПараметровИзVault(НастройкиVault); +КонецПроцедуры + +&Тест +Процедура ПроверитьПолучениеПараметровИзVaultСАдресомСоСлешемНаКонце() Экспорт + + НастройкиVault = Новый Структура; + НастройкиVault.Вставить("Адрес", АдресВина + "/"); + НастройкиVault.Вставить("Токен", "VAULT_TOKEN"); + НастройкиVault.Вставить("Запрос", "my_secret_store/super_secret"); + + ПроверитьПолучениеПараметровИзVault(НастройкиVault); +КонецПроцедуры + +Процедура ПроверитьПолучениеПараметровИзVault(Знач НастройкиVault) Экспорт + // Дано МенеджерПараметров = Новый МенеджерПараметров(); МенеджерПараметров.ДобавитьПровайдерПараметров(Новый ПровайдерПараметровVAULT()); МенеджерПараметров.УстановитьНастройкиVault(НастройкиVault); @@ -66,7 +82,7 @@ Попытка Ответ = КоннекторHTTP.Get( - СтрШаблон("%1/v1/ping", АдресВина), , + СтрШаблон("%1/ping", АдресВина), , Новый Структура("Заголовки", Новый Соответствие) ).Текст(); @@ -85,7 +101,7 @@ Процедура УбитьТестовыйВолт() КоннекторHTTP.Get( - СтрШаблон("%1/v1/kill", АдресВина), , + СтрШаблон("%1/kill", АдресВина), , Новый Структура("Заголовки", Новый Соответствие) ); @@ -93,4 +109,4 @@ КонецПроцедуры -АдресВина = "http://localhost:3333"; +АдресВина = "http://localhost:3333/v1";