diff --git a/06.17-Data-функция-decort_sep_pool-получение-информации-о-pool-sep..md b/06.17-Data-функция-decort_sep_pool-получение-информации-о-pool-sep..md new file mode 100644 index 0000000..b022880 --- /dev/null +++ b/06.17-Data-функция-decort_sep_pool-получение-информации-о-pool-sep..md @@ -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 >> .json +``` + +