diff --git a/06.01.62-Data-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_rg_list-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8-%D0%BE-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B5-%D1%80%D0%B5%D1%81%D1%83%D1%80%D0%BD%D1%8B%D1%85-%D0%B3%D1%80%D1%83%D0%BF%D0%BF.md b/06.01.62-Data-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_rg_list-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8-%D0%BE-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B5-%D1%80%D0%B5%D1%81%D1%83%D1%80%D0%BD%D1%8B%D1%85-%D0%B3%D1%80%D1%83%D0%BF%D0%BF.md new file mode 100644 index 0000000..c980d1d --- /dev/null +++ b/06.01.62-Data-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_rg_list-%D0%BF%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8-%D0%BE-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B5-%D1%80%D0%B5%D1%81%D1%83%D1%80%D0%BD%D1%8B%D1%85-%D0%B3%D1%80%D1%83%D0%BF%D0%BF.md @@ -0,0 +1,88 @@ +_Data source_ функция **decort_rg_list** служит для получения информации о списке ресурных групп. + +Ресурсная группа в облачной платформе DECORT это способ группирования _compute_-ов (например, по функциональному признаку или принадлежности к одному и тому же проекту). Ресурсную группу можно рассматривать как небольшой персональный дата-центр, в котором размещаются один или несколько серверов и виртуальных сетевых сегментов (ViNS). + +Экземпляры _compute_ (виртуальные серверы) всегда создаются в принадлежности к какой-либо ресурсной группе. Как следствие, для создания экземпляра _compute_ помимо других параметров требуется указать идентификатор целевой ресурсной группы. Для получения такого идентификатора можно воспользоваться рассматриваемой здесь _data source_ функцией **decort_rg_list**. + +## Аргументы +_Data source_ функция **decort_rg_list** принимает следующие аргументы: + +| Аргумент | Тип | Обязательный | Описание | +| --- | --- | --- | --- | +| includedeleted | bool| :x: | Включить в результат удаленные ресурсы | +| page | int | :x: | Номер страниц | +| size | int | :x: | Размер страницы | + +Пользователь облачной платформы, от лица которого происходит обращение к данной функции, должен иметь доступ к указанному `account` и ресурсной группе. В противном случае возникнет ошибка доступа. + +Пользователь облачной платформы задается на стадии инициализации Terraform провайдера DECORT (см. [подробности](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/04.02-Инициализация-Terraform-провайдера-DECORT)). + +## Возвращаемые значения +В случае успешного выполнения _data source_ функция **decort_rg_list** возвращает в указанную при вызове переменную, в поле _items_, массив, каждый элемент которого состоит из следующих параметров: +| Параметр | Тип | Описание | +| --- | --- | --- | +| account_acl | []Struct [см. ниже](#описание-структуры-acl)| Cписок Acces Control | +| account_id | int | Уникальный идентификатор подписчика-владельца данной ресурсной группы. | +| account_name | string | Имя подписчика ("account"), которому принадлежит данная ресурсная группа. | +| acl | []Struct [см. ниже](#описание-структуры-acl)| Cписок Acces Control | +| created_by | string | Кем создан ресурс | +| created_time | int | Время создания ресурса | +| def_net_id | int | Уникальный идентификатор сети, установленной по умолчанию для данной ресурсной группы. Экземпляры _compute_, создаваемые в данной ресурсной группе, по умолчанию будут иметь подключение к данной сети, если при их создании явно не указано иное.
Для `def_net_type = "EXTNET" в этом параметре указан идентификатор внешней сети. Для `def_net_type = "PRIVATE" - идентификатор ViNS. | +| def_net_type | string | Тип сети, установленной по умолчанию для данной ресурсной группы. Может принимать одно из следующих значений:
* EXTNET - подключение во внешнюю сеть с идентификатором `def_net_id`
* PRIVATE - подключение в виртуальный сетевой сегмент (ViNS ) с идентификатором `def_net_id`
* NONE - сеть по умолчанию не задана, экземпляры _compute_ в данной ресурсной группе будут создаваться без сетевых подключений, если при их создании явно не указано иное. | +| deleted_by | string | Кем удален ресурс | +| deleted_time | int | Время удаления ресурса | +| desc | string | Текстовое описание данной ресурсной группы. | +| dirty | bool | Dirty | +| gid | int | Идентификатор grid, которому будет принадлежать создаваемая ресурсная группа. | +| guid | int | GUID | +| rg_id | int | Идентификатор данной ресурсной группы. | +| lock_status | string | Lock статус | +| milestones | int | Milestones | +| name | string | Имя данной ресурсной группы. Обратите внимание, что имя ресурсной группы является уникальным только в рамках одного и того же подписчика ("account"). | +| register_computes | bool | Флаг отвечающий за то зарегестрированы ли компьюты | +| resource_limits | [см. ниже](#описание-структуры-resource-limits) | Лимиты ресурсов | +| secret | string | Секрет | +| status | string | Статус resgroup | +| cpu_allocation_parameter | string | Параметр выделения CPU | +| cpu_allocation_ratio | float | Отношение выделения CPU | +| updated_by | string | Кем был сделан апдейт | +| updated_time | int | Время апдейта | +| vins | []int | Список id виртуальных сетей | +| vms | []int | Список id компьютов | +| resource_types | []string | Res types | +| uniq_pools | []string | Uniq pools | + +### Описание структуры acl +| Параметр | Тип | Описание | +| --- | --- | --- | +| explicit | bool | Явно ли указан доступ | +| guid | string | guid Ресурса | +| right | string | Права на ресурс | +| status | string | Статус ресурса | +| type | string | Тип ресурса | +| user_group_id | string | ID user group | + +### Описание структуры resources limits +| Параметр | Тип | Описание | +| --- | --- | --- | +| cu_c | float | Количество ядер CPU | +| cu_d | float | Размер диска | +| cu_i | float | Количество публичных IP адресов | +| cu_m | float | размер RAM | +| cu_np | float | Хранилище траффика | +| gpu_units | float | количество GPU ядер | + +## Пример использования +Пример вызова _data source_ функции **decort_rg_list**: + +```terraform +data "decort_rg_list" "rg_list" { + included = false +} +# Once the above directive completes, resource group ID will be accessible as +# data.decort_rg_list.rg_list.id +``` + +Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/04.02-Инициализация-Terraform-провайдера-DECORT) и [пример](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/02.-Пример-работы)). + +После успешного завершения такого вызова **decort_rg_list** в переменной `data.decort_rg_list.rg_list` будут сохранены возвращаемые значения. В частности, для получения идентификатора ресурсной группы следует использовать конструкцию `data.decort_rg_list.rg_list.id`