Create data source decort_sep_pool page
@@ -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
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user