diff --git a/06.12-Data-функция-decort_sep-получение-информации-о-sep..md b/06.12-Data-функция-decort_sep-получение-информации-о-sep..md new file mode 100644 index 0000000..cc98462 --- /dev/null +++ b/06.12-Data-функция-decort_sep-получение-информации-о-sep..md @@ -0,0 +1,77 @@ +Функция доступна в провайдере версии 2.2 и выше. + +**Внимание:** необходимы права администратора. + +_Data source_ функция **decort_sep** служит для получения информации о переданном storage endpoint. Storage endpoint (sep) - точка доступа к хранилищу данных. Sep бывает четырех типов: +- des +- hitachi +- dorado (huawei) +- tatlin +Каждый тип отличается возможной конфигурацией. + +## Аргументы +_Data source_ функция **decort_sep** принимает следующие аргументы: + +| Аргумент | Тип | Обязательный | Описание | +| --- | --- | --- | --- | +| sep_id | int | :heavy_check_mark: | ID storage endpoint | + +## Возвращаемые значения +В случае успешного выполнения _data source_ функция **decort_sep** возвращает в указанную при вызове переменную элемент который состоит из следующих параметров: + +| Параметр | Тип | Описание | +| --- | --- | --- | +| sep_id | int | id storage endpoint | +| meta | []string | Мета информация о sep | +| consumed_by | []int | Список node id, использующих sep | +| desc | string | Описание sep | +| gid | int | Grid id, к которому привязан sep | +| guid | int | Внутренний id sep | +| milestones | int | Вехи | +| name | string | Наименование sep | +| obj_status | string | Статус sep | +| provided_by | []int | Список provider id, использующих sep | +| tech_status | string | Технический статус sep | +| type | string | Тип sep | +| config | json string | конфигурация sep | + + +## Пример использования +Пример вызова _data source_ функции **decort_snapshot_list**: +```terraform +data "decort_sep" "s" { + sep_id = 1111 +} +# once the above directive completes, sep will be accessible +# as data.decort_sep.s + +# and config will be accessible +# as data.decort_sep.s.config +``` + +Данный пример подразумевает, что ранее по тексту 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** в переменной `data.decort_sep.s` будут сохранены возвращаемые значения. + +Чтобы получить доступ к конфигурации и сохранить ее в файл .json, необходимо: +1. определить в .tf - файле дополнительный output с любым именем, в который запишется информация о конфигурации sep и обернуть ее в вызов функции jsondecode для декодирования информации. +```terraform +output "sep_config" { + value = jsondecode(data_sep.s.config) +} +``` +2. Применить изменения в терраформе. +```bash +terraform apply +``` +3. Сохранить данные из output в .json - файл. +```bash +terraform output -json sep_config >> config.json +``` + +В общем случае это будет выглядеть как указано ниже. +```bash +terraform output -json >> .json +``` + +