diff --git a/07.01.12-Resource-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_bservice-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B1%D0%B0%D0%B7%D0%BE%D0%B2%D1%8B%D0%BC-%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%BC.md b/07.01.12-Resource-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_bservice-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B1%D0%B0%D0%B7%D0%BE%D0%B2%D1%8B%D0%BC-%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%BC.md new file mode 100644 index 0000000..abd9d4e --- /dev/null +++ b/07.01.12-Resource-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F-decort_bservice-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B1%D0%B0%D0%B7%D0%BE%D0%B2%D1%8B%D0%BC-%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%BC.md @@ -0,0 +1,121 @@ +Функция доступна в провайдере версии 2.3 и выше. + +_Resource_ функция **decort_bservice** служит для управления базовым сервисом (basic service). Базовый сервис служит шаблоном для создания вычислительных мощностей (computes) по заданным правилам. + +## Аргументы +_Resource_ функция **decort_bservice** принимает следующие аргументы: + +| Аргумент | Тип | Обязательный | Описание | +| --- | --- | :---: | --- | +| service_name | string | :heavy_check_mark: | Название сервиса
Используется при создании сервиса | +| rg_id | int | :heavy_check_mark: | ID ресурсной группы
Используется при создании сервиса | +| ssh_key | string | :x: | Ключ пользователя для подключения по ssh
Используется при создании сервиса | +| ssh_user | string | :x: | Имя пользователя для подключения по ssh
Используется при создании сервиса | +| enable | bool | :x: | Флаг доступности
Используется при редактировании сервиса
По-умолчанию: false | +| start | bool | :x: | Флаг старта/остановки сервиса
Используется при редактировании
По-умолчанию: false | +| snapshots | Struct{
label string
rollback bool
} | :x: | Снимки состояния сервиса
Название снимка. Обязательное поле для создания снимка
Восстановление по этому снимку. true - для активации
 
 
| +| restore | bool | :x: | Флаг восстановления сервиса
Используется при редактировании
По-умолчанию: true | +| permanently | bool | :x: | Флаг моментального удаления сервиса
Если true - сервис и все его зависимости мгновенно удаляется из платформы без возможности восстановления
Если false - сервис попадает в "корзину", из которой его можно восстановить
Используется при удалении
По-умолчанию: false | + + +## Возвращаемые значения +В случае успешного выполнения _data source_ функция **decort_bservice** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров: + +| Параметр | Тип | Описание | +| --- | --- | --- | +| account_id | int | ID аккаунта | +| account_name | string | Название аккаунта | +| base_domain | string | Базовый домен | +| computes | []Struct [см. ниже](#описание-структуры-compute) | Список компьютов | +| cpu_total | int | Кол-во ядер | +| created_by | string | Кем создан сервис | +| created_time | int | Время создания сервиса | +| deleted_by | string | Кем удален сервис | +| deleted_time | int | Время удаления сервиса | +| disk_total | int | Кол-во используемого места на дисках, ГБ | +| gid | int | Grid id | +| groups | []Struct [см. ниже](#описание-структуры-group) | Список вычислительных групп сервиса | +| groups_name | []string | Список вычислительных групп поименно | +| guid | int | Внутренний ID сервиса | +| milestones | int | Вехи | +| service_id | int | ID сервиса | +| service_name | string | Название сервиса | +| parent_srv_id | int | ID родительского сервисе | +| parent_srv_name | string | Название родительского сервиса | +| ram_total | int | Общее кол-во RAM, МБ | +| rg_id | int | ID ресурсной группы | +| rg_name | string | Название ресурсной группы | +| snapshots | []Struct{
guid string
label string
timestamp int
valid bool
} | Список снимков состояний
guid снимка
Название снимка
Время создания снимка
Флаг, валидность снимка состояния
 
| +| ssh_key | string | Ключ пользователя для подключения по ssh | +| ssh_user | string | Имя пользователя для подключения по ssh | +| status | string | Статус сервиса | +| tech_status | string | Технический статус сервиса | +| updated_by | string | Кем сервис был обновлен | +| updated_time | int | Время последнего обновления | +| user_managed | bool | Флаг, управляется ли пользователем | + +### Описание структуры compute +| Параметр | Тип | Описание | +| --- | --- | --- | +| account_id | int | ID аккаунта | +| architecture | string | Архитектура | +| compgroup_id | int | ID группы | +| compgroup_name | string | Наименование группы | +| compgroup_role | string | Роль компьюта в группе | +| id | int | ID компьюта | +| name | string | Наименование компьюта | +| rg_id | int | ID ресурсной группы | +| stack_id | int | Stack ID | +| status | string | Статус | +| tech_status | string | Тех. статус | + +### Описание структуры group +| Параметр | Тип | Описание | +| --- | --- | --- | +| computes | int | Кол-во компьютов | +| consistency | bool | Последовательность | +| id | int | ID группы | +| name | string | Наименование группы | +| status | string | Статус | +| tech_status | string | Тех. статус | + +## Пример использования +Пример вызова _resource_ функции **decort_bservice**: +```terraform +resource "decort_bservice" "b" { + service_name = "my_test_bservice_sn" + rg_id = 11111 + #enable = true + + #снимок состояния + #может быть несколько в ресурсе + /* + snapshots { + #имя снимка состояния + #обязательный параметр + #тип - строка + label = "test_snapshot" + + #восстановление сервиса из снимка состояния + #необязательный параметр + #тип - булев тип + #по-умолчанию - false + #восстановление происходит только при переключении с false на true + rollback = false + } + snapshots { + label = "test_snapshot_1" + } + */ + #start = false + #restore = true + #permanently = true + #service_id = 11111 +} +# once the above directive completes, bservice will be accessible +# as decort_bservice.b +``` + +Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-decort/wiki/04.02-Инициализация-Terraform-провайдера-DECORT)). + +После успешного завершения такого вызова **decort_bservice** в переменной `decort_bservice.b` будут сохранены возвращаемые значения.