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

_Data source_ функция **decort_vfpool_list** служит для получения информации о доступных vfpool устройствах

## Аргументы

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

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| by_id | int | :x: | Фильтр по ID устройства vfpool |
| gid | int | :x: | Фильтр по grid ID |
| name | string | :x: | Фильтр по наименованию vfpool |
| description | string | :x: | Фильтр по описанию |
| status | string | :x: | Фильтр по состоянию vfpool |
| account_access | int | :x: | Фильтр по имеющей доступ к vfpool учетной записи |
| rg_access | int | :x: | Фильтр по имеющей доступ к vfpool ресурсной группе |
| sort_by | string | :x: | Отсортировать вывод по значениям поля. Формат +/-(field) |
| page | int | :x: | Номер страницы для вывода |
| size | int | :x: | Размер страницы для вывода |


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

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

| Параметр | Тип | Описание |
| --- | --- | --- |
| account_access | []int | Список имеющих доступ к vfpool учетных записей |
| created_time | int | Дата создания |
| description | string | Описание |
| gid | int | Grid ID |
| guid | int | Guid пользователя vfpool |
| vfpool_id | int | ID устройства vfpool |
| name | string | Наименование vfpool |
| rg_access | []int | Список имеющих доступ к vfpool ресурсных групп |
| status | string | Состояние |
| updated_time | int | Дата изменения |
| vfs | []Struct [см. ниже](#описание-структуры-vfs) | Список параметров |

### Описание структуры vfs
| Параметр | Тип | Описание |
| --- | --- | --- |
| node_id | int | ID узла |
| vf_list | []Struct [см. ниже](#описание-структуры-vfs_list) | Список параметров |

### Описание структуры vf_list
| Параметр | Тип | Описание |
| --- | --- | --- |
| nic_name | string | Название сетевого адаптера |
| vfs_info | []Struct [см. ниже](#описание-структуры-vfs_info) | Список параметров |

### Описание структуры vfs_info

| Параметр | Тип | Описание |
| --- | --- | --- |
| id | int | Идентификатор |
| claimed | bool | Флаг наличия сетевого драйвера |
| vm_id | int | ID виртуальной машины |

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

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

```terraform
data "decort_vfpool_list" "vfpool_list" {
  #фильтрация списка для получения информации о конкретном vfpool по его id
  #необязательный параметр
  #тип - целое число
  #by_id = 1

  #фильтрация списка для получения информации о vfpool, которые принадлежат к определенному GRID
  #необязательный параметр
  #тип - целое число
  #gid = 1

  #фильтрация списка для получения информации о конкретном vfpool по его имени
  #необязательный параметр
  #тип - строка
  #name = "alpha-cpu-04"

  #фильтрация списка для получения информации о конкретном vfpool по его описанию
  #необязательный параметр
  #тип - строка
  #description = "some"

  #фильтрация списка для получения информации о vfpool, которые имеют соответствующий статус
  #необязательный параметр
  #тип - строка
  #status = "ENABLED"

  #фильтрация списка для получения информации о vfpool, которые доступны конкретному аккаунту
  #необязательный параметр
  #тип - целое число
  #account_access = 1

  #фильтрация списка для получения информации о vfpool, которые доступны конкретной ресурсной группе
  #необязательный параметр
  #тип - целое число
  #rg_access = 1

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

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

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

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

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