Функция доступна в провайдере версии 4.5.1 и выше.

_Data source_ функция **decort_cb_grid_list** служит для получения информации об имеющихся в облачной платформе grid. Grid это пространства, на которых возможно размещение виртуальных машин.

## Аргументы

_Data source_ функция **decort_cb_grid_list** принимает следующие аргументы:

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| by_id | int | :x: | Фильтр по id grid |
| name | string | :x: | Фильтр по названию grid |
| sort_by | string | :x: | Фильтр по одному из поддерживаемых полей, формат: +или- название поля |
| page | int | :x: | Номер страниц |
| size | int | :x: | Размер страницы |

## Возвращаемые значения

В случае успешного выполнения _data source_ функция **decort_cb_grid_list** возвращает в указанную при вызове переменную, в поле _items_ массив, каждый элемент которого состоит из следующих параметров:

| Параметр | Тип | Описание |
| --- | --- | --- |
| resources | []Struct{} [см. ниже](#описание-структуры-resources) | Ресурсы |
| auth_broker | []string | auth broker |
| flag | string | Флаг |
| gid | int | ID grid |
| guid | int | Внутренний id |
| id | int | ID |
| location_code | string | Код расположения grid |
| name | string | Наименование grid |

### Описание структуры resources
| Параметр | Тип | Описание |
| --- | --- | --- |
| current | []Struct{} [см. ниже](#описание-структуры-current) | Текущие ресурсы |
| reserved | []Struct{} [см. ниже](#описание-структуры-reserved) | Зареервированные ресурсы |

### Описание структуры current
| Параметр | Тип | Описание |
| --- | --- | --- |
| cpu | int | Количество процессоров |
| disk_size | float | Размер диска |
| disk_size_max | int | Максимальный размер диска |
| ext_ips | int | Лимит на суммарное потребление внешних IP адресов |
| ext_traffic | int | Лимит на суммарный трафик |
| gpu | int | Количество GPU |
| ram | int | Количество RAM |
| seps | []Struct{} [см. ниже](#описание-структуры-seps) | Коннекторы к системе хранения данных seps |

### Описание структуры reserved
| Параметр | Тип | Описание |
| --- | --- | --- |
| cpu | int | Количество процессоров |
| disk_size | float | Размер диска |
| disk_size_max | int | Максимальный размер диска |
| ext_ips | int | Лимит на суммарное потребление внешних IP адресов |
| ext_traffic | int | Лимит на суммарный трафик |
| gpu | int | Количество GPU |
| ram | int | Количество RAM |
| seps | []Struct{} [см. ниже](#описание-структуры-seps) | Коннекторы к системе хранения данных seps |

### Описание структуры seps
| Параметр | Тип | Описание |
| --- | --- | --- |
| sep_id | string | id sep |
| data_name | string | Имя пула информации внутри SEP'а |
| disk_size | float | Размер диска |
| disk_size_max | float | Максимальный размер диска |

## Пример использования

Пример вызова _data source_ функции **decort_cb_grid_list**:

```terraform
data "decort_cb_grid_list" "gl" {
  #фильтр по id grid
  #опциональный параметр
  #тип - целое число
  #by_id = 1

  #название grid
  #опциональный параметр
  #тип - строка
  #name = "grid name"

  #сортировка по одному из поддерживаемых полей
  #опциональный параметр
  #формат - "+поле" по возрастанию / "-поле" по убыванию
  #тип - строка
  #sort_by = "+name"

  #номер страницы для отображения
  #опциональный параметр
  #если не задан - выводятся все доступные данные
  #тип - целое число
  #page = 2

  #размер страницы
  #опциональный параметр
  #если не задан - выводятся все доступные данные
  #тип - целое число
  #size = 3
}
```

Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/wiki-terraform-provider-decort/src/branch/main/4.7.2/04.02-Инициализация-Terraform-провайдера-DECORT.md)).

После успешного завершения такого вызова **decort_cb_grid_list** в переменной `data.decort_cb_grid_list.gl` будут сохранены возвращаемые значения.
