diff --git a/06.4-Data-функция-decort_vins:-получение-информации-о-ViNS..md b/06.4-Data-функция-decort_vins:-получение-информации-о-ViNS..md new file mode 100644 index 0000000..fc2f673 --- /dev/null +++ b/06.4-Data-функция-decort_vins:-получение-информации-о-ViNS..md @@ -0,0 +1,46 @@ +_Data source_ функция **decort_vins** служит для получения информации об уже существующем виртуальном сетевом сегменте (Virtual Network Segment, ViNS). + +## Аргументы +_Data source_ функция **decort_vins** принимает следующие аргументы: + +| Аргумент | Тип | Описание | +| --- | --- | --- | +| account_id | int | Идентификатор подписчика ("account"), в котором находится данный ViNS.
Данный параметр игнорируется, если задан ненулевой `rg_id`, так как в этом случае подразумевается, что осуществляется поиск ViNS на уровне указанной ресурсной группы. | +| name | string | Имя виртуального сетевого сегмента (ViNS), по которому требуется получить информацию. Имя не может быть пустым.
ViNS идентифицируется по комбинации имени и идентификатора ресурсной группы (`rg_id`) или подписчика (`account_id`).
Обратите внимание, что имя ViNS является уникальным в рамках "account" и ресурсной группы. | +| rg_id | int | Идентификатор ресурсной группы, в которой находится данный ViNS.
Если необходимо найти ViNS, созданный на уровне подписчика ("account"), то необходимо указать ненулевой `account_id`, а параметр `rg_id` не задавать. | + +Пользователь облачной платформы, от лица которого происходит обращение к данной функции, должен иметь доступ к указанной учётной записи ("account") и/или ресурсной группе. В противном случае возникнет ошибка доступа. + +Пользователь облачной платформы задается на стадии инициализации Terraform провайдера DECORT (см. [подробности](https://github.com/rudecs/terraform-provider-decort/wiki/03.-%D0%9E%D0%B1%D0%B7%D0%BE%D1%80-%D0%BE%D0%B1%D0%BB%D0%B0%D1%87%D0%BD%D0%BE%D0%B9-%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D1%8B-DECORT.)). + +## Возвращаемые значения +В случае успешного выполнения _data source_ функция **decort_vins** возвращает в указанную при вызове переменную следующие значения: + +| Параметр | Тип | Описание | +| --- | --- | --- | +| account_id | int | Уникальный идентификатор подписчика-владельца ViNS. | +| account_name | string | Имя подписчика ("account"), которому принадлежит ViNS. | +| description | string | Текстовое описание ViNS. | +| ext_ip_addr | string | IP адрес подключения ViNS к внешней сети. Если ViNS не подключен к внешней сети, то данный параметр содержит пустую строку. Обратите внимание, из всех ViNS, созданных на уровне одной и той же ресурсной группы, только один может иметь подключение к внешней сети. ViNS, созданные на уровне "account", не могут иметь подключений к внешним сетям. | +| ext_net_id | int | Идентификатор внешней сети, к которой подключен данный ViNS. Признаком подключения ViNS ко внешней сети является непустое значение параметра `ext_ip_addr`. | +| id | int| Идентификатор ViNS. | +| ipcidr | string | IP CIDR, присвоенный внутреннему сегменту данного ViNS. | +| name | string | Имя ViNS. | +| rg_id | int | Идентификатор ресурсной группы, на уровне которой создан ViNS. Для ViNS, существующих на уровне "account", данный параметр будет равен 0. | + + +## Пример использования +Пример вызова _data source_ функции **decort_vins**: + +``` +data "decort_vins "my_vins" { + name = "Vins01" # this is the name of pre-existing ViNS + rg_id = 500 # this is the ID of the resource group, where ViNS named "Vins01" is found +} +# Once the above directive completes, ViNS ID will be accessible as +# "${data.decort_vins.my_vins.id}" +``` + +Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://github.com/rudecs/terraform-provider-decort/wiki/05.-%D0%98%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F-Terraform-%D0%BF%D1%80%D0%BE%D0%B2%D0%B0%D0%B9%D0%B4%D0%B5%D1%80%D0%B0-DECORT.) и [пример](https://github.com/rudecs/terraform-provider-decort/wiki/02.-%D0%9A%D0%BE%D1%80%D0%BE%D1%87%D0%B5,-%D0%A1%D0%BA%D0%BB%D0%B8%D1%84%D0%BE%D1%81%D0%BE%D1%84%D1%81%D0%BA%D0%B8%D0%B9!)). + +После успешного завершения такого вызова **decort_vins** в переменной `data.decort_vins.my_vins` будут сохранены возвращаемые значения. В частности, для получения идентификатора ViNS следует использовать конструкцию `"${data.decort_vins.my_vins.id}"` \ No newline at end of file