You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
terraform-provider-dynamix/wiki/1.0.1/07.01.12-Resource_dynamix_b...

155 lines
9.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

_Resource_ функция **dynamix_bservice** служит для управления базовым сервисом (basic service). Базовый сервис служит шаблоном для создания вычислительных мощностей (computes) по заданным правилам.
## Аргументы
_Resource_ функция **dynamix_bservice** принимает следующие аргументы:
| Аргумент | Тип | Обязательный | Описание |
| --- | --- | :---: | --- |
| service_name | string | :heavy_check_mark: | Название сервиса<br/>Используется при создании сервиса |
| rg_id | int | :heavy_check_mark: | ID ресурсной группы<br/>Используется при создании сервиса |
| ssh_key | string | :x: | Ключ пользователя для подключения по ssh<br/>Используется при создании сервиса |
| ssh_user | string | :x: | Имя пользователя для подключения по ssh<br/>Используется при создании сервиса |
| enable | bool | :x: | Флаг доступности<br/>Используется при редактировании сервиса<br/>По-умолчанию: false |
| start | bool | :x: | Флаг старта/остановки сервиса<br/>Используется при редактировании<br/>По-умолчанию: false |
| snapshots | Struct{<br/>label string<br/>rollback bool <br/>} | :x: | Снимки состояния сервиса<br/>Название снимка. Обязательное поле для создания снимка<br/>Восстановление по этому снимку. true - для активации<br/>&nbsp;<br/>&nbsp;<br/> |
| restore | bool | :x: | Флаг восстановления сервиса<br/>Используется при редактировании<br/>По-умолчанию: true |
| permanently | bool | :x: | Флаг моментального удаления сервиса<br/>Если true - сервис и все его зависимости мгновенно удаляется из платформы без возможности восстановления<br/>Если false - сервис попадает в "корзину", из которой его можно восстановить<br/>Используется при удалении<br/>По-умолчанию: false |
<!--| service_id | int | :x: | ID сервиса, позволяет сформировать .tfstate, если сервис есть в платформе. В таким случае, все обязательные поля будут проигнорированы |-->
## Возвращаемые значения
В случае успешного выполнения _data source_ функция **dynamix_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{<br/>guid string<br/>label string<br/>timestamp int<br/>valid bool<br/>} | Список снимков состояний<br/>guid снимка<br/>Название снимка<br/>Время создания снимка<br/>Флаг, валидность снимка состояния<br/>&nbsp;<br/> |
| 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_ функции **dynamix_bservice**:
```terraform
resource "dynamix_bservice" "b" {
#имя сервиса
#обязательный параметр
#тип - строка
service_name = "my_test_bservice_sn"
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 11111
#доступность сервиса
#необязательный параметр
#тип - булев
#используется при редактировании ресурса
#по-умолачанию - false
#enable = true
#снимок состояния
#необязательный параметр
#тип - объект
#используется при редактировании ресурса
#может быть несколько в ресурсе
/*
snapshots {
#имя снимка состояния
#обязательный параметр
#тип - строка
label = "test_snapshot"
#восстановление сервиса из снимка состояния
#необязательный параметр
#тип - булев
#по-умолчанию - false
#восстановление происходит только при переключении с false на true
rollback = false
}
*/
#старт сервиса
#необязательный параметр
#тип - булев
#используется при редактировании ресурса
#по-умолачанию - false
#start = false
#восстановление сервиса после удаления
#необязательный параметр
#тип - булев
#используется при редактировании ресурса
#по-умолачанию - false
#restore = true
#мгновенное удаление сервиса без права восстановления
#необязательный параметр
#тип - булев
#используется при удалении ресурса
#по-умолачанию - false
#permanently = true
#id сервиса, позволяет сформировать .tfstate, если сервис есть в платформе
#необязательный параметр
#тип - булев
#используется при создании ресурса
#service_id = 11111
}
```
Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DYNAMIX см. соответствующий [раздел](https://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.0.1/04.02-Инициализация-Terraform-провайдера-DYNAMIX.md)).
После успешного завершения такого вызова **dynamix_bservice** в переменной `dynamix_bservice.b` будут сохранены возвращаемые значения.