Create data source decort_sep_pool page

stSolo
2022-05-04 15:41:53 +03:00
parent aa2e7e162a
commit 8ab00c67a5

@@ -0,0 +1,69 @@
Функция доступна в провайдере версии 2.2 и выше.
**Внимание:** необходимы права администратора.
_Data source_ функция **decort_sep_pool** служит для получения информации о pool'e переданного storage endpoint. Storage endpoint (sep) - точка доступа к хранилищу данных. Sep бывает четырех типов:
- des
- hitachi
- dorado
- tatlin
Каждый тип отличается возможной конфигурацией.
Полученные данные могут быть использовать в качестве части конфигурации sep, а так же для ее изменения.
## Аргументы
_Data source_ функция **decort_sep_pool** принимает следующие аргументы:
| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| sep_id | int | :heavy_check_mark: | ID storage endpoint |
| pool_name | string | :heavy_check_mark: | Наименование pool, принадлежащего sep |
## Возвращаемые значения
В случае успешного выполнения _data source_ функция **decort_sep_pool** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров:
| Параметр | Тип | Описание |
| --- | --- | --- |
| sep_id | int | id storage endpoint |
| pool_name | string | Наименование pool |
| pool | json string | Описание pool |
## Пример использования
Пример вызова _data source_ функции **decort_sep**:
```terraform
data "decort_sep_pool" "sp" {
sep_id = 1111
pool_name = "pool-name"
}
# once the above directive completes, sep pool will be accessible
# as data.decort_sep_pool.sp
# and detailed pool will be accessible
# as data.decort_sep_pool.sp.pool
```
Данный пример подразумевает, что ранее по тексту 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.)).
После успешного завершения такого вызова **decort_sep_pool** в переменной `data.decort_sep_pool.sp` будут сохранены возвращаемые значения.
Чтобы получить доступ к pool и сохранить в файл .json, необходимо:
1. определить в .tf - файле дополнительный output с любым именем, в который запишется информация о pool и обернуть ее в вызов функции jsondecode для декодирования информации.
```terraform
output "sep_pool" {
value = jsondecode(data_sep_pool.sp.pool)
}
```
2. Применить изменения в терраформе.
```bash
terraform apply
```
3. Сохранить данные из output в .json - файл.
```bash
terraform output -json sep_pool >> pool.json
```
В общем случае это будет выглядеть как указано ниже.
```bash
terraform output -json <output-name> >> <file-name>.json
```