205 lines
7.5 KiB
HCL
205 lines
7.5 KiB
HCL
/*
|
||
Пример использования
|
||
Ресурсов RG
|
||
Ресурс позволяет:
|
||
1. Создавать
|
||
2. Редактировать
|
||
3. Удалять
|
||
*/
|
||
|
||
#Раскомментируйте этот код,
|
||
#и внесите необходимые правки в версию и путь,
|
||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||
/*
|
||
terraform {
|
||
required_providers {
|
||
dynamix = {
|
||
source = "basistech.ru/tf/dynamix"
|
||
version = "<VERSION>"
|
||
}
|
||
}
|
||
}
|
||
*/
|
||
|
||
provider "dynamix" {
|
||
authenticator = "decs3o"
|
||
#controller_url = <DYNAMIX_CONTROLLER_URL>
|
||
controller_url = "https://ds1.digitalenergy.online"
|
||
#oauth2_url = <DYNAMIX_OAUTH2_URL>
|
||
oauth2_url = "https://sso.digitalenergy.online"
|
||
allow_unverified_ssl = true
|
||
}
|
||
|
||
resource "dynamix_resgroup" "rg" {
|
||
#имя ресурсной группы
|
||
#обязательный параметр
|
||
#тип - строка
|
||
#используется при создании и обновлении
|
||
name = "testing_rg_1"
|
||
|
||
#id аккаунта которому будет принадлежать ресурсная группа
|
||
#обязательный параметр
|
||
#тип - целое число
|
||
#используется при создании
|
||
account_id = 123
|
||
|
||
#id платформы
|
||
#обязательный параметр
|
||
#тип - целое число
|
||
#используется при создании
|
||
gid = 1234
|
||
|
||
#тип сети по умолчанию для этой ресурсной группы
|
||
#опциональный параметр
|
||
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети
|
||
#допустимые значения: PRIVATE, PUBLIC, NONE
|
||
#по умолчанию - PRIVATE
|
||
#тип - строка
|
||
#используется при создании
|
||
#def_net_type = "NONE"
|
||
|
||
#ip cidr частной сети, если сеть по умолчанию PRIVATE
|
||
#опциональный параметр
|
||
#тип - строка
|
||
#используется при создании
|
||
#ipcidr = "1.1.1.1"
|
||
|
||
#id внешней сети
|
||
#опциональный параметр
|
||
#тип - целое число
|
||
#используется при создании
|
||
#ext_net_id = 123
|
||
|
||
#ip внешней сети
|
||
#опциональный параметр
|
||
#тип - строка
|
||
#используется при создании
|
||
#ext_ip = "1.1.1.1"
|
||
|
||
#описание
|
||
#опциональный параметр
|
||
#тип - строка
|
||
#используется при создании и обновлении
|
||
#description = "qwerty"
|
||
|
||
#флаг доступности ресурсной группы
|
||
#опциональный параметр
|
||
#тип - булев
|
||
#используется при создании и обновлении
|
||
#по умолчанию - true
|
||
#enable = true
|
||
|
||
#имя пользователя
|
||
#опциональный параметр
|
||
#тип - строка
|
||
#используется при создании
|
||
#owner = "name_user"
|
||
|
||
#блок для предоставления прав на ресурсную группу
|
||
#опциональный параметр
|
||
#тип - блок прав доступа
|
||
#используется при создании и обновлении
|
||
#access = [{
|
||
#имя юзера предоставляемому права
|
||
#обязательный параметр при использовании блока
|
||
#тип - строка
|
||
#user = "kasim_baybikov_1@decs3o"
|
||
|
||
#тип прав
|
||
#опциональный параметр
|
||
#тип - строка
|
||
#right = "RCX"
|
||
#}]
|
||
|
||
#установить сеть по умолчанию
|
||
#опциональный параметр
|
||
#тип - блок сетей
|
||
#используется при создании и обновлении
|
||
#def_net = {
|
||
#тип сети
|
||
#обязательный параметр при использовании блока
|
||
#тип - строка
|
||
#net_type = "PUBLIC"
|
||
|
||
#id сети
|
||
#опциональный параметр
|
||
#идентификатор сегмента сети. Если net_type — PUBLIC, а net_id — 0,
|
||
#то будет выбран сегмент внешней сети по умолчанию. Если net_type
|
||
#имеет значение PRIVATE и net_id=0, будет выбран первый vins, определенный для этой ресурсной группы
|
||
#в противном случае net_id идентифицирует либо существующий сегмент внешней сети, либо vins
|
||
#тип - целое число
|
||
#net_id = 1234
|
||
#}
|
||
|
||
#лимиты ресурсов для ресурсной группы
|
||
#опциональный параметр
|
||
#тип - блок конфигураций
|
||
#используется при создании и обновлении
|
||
#quota = {
|
||
#максимальное количество ядер процессора
|
||
#опциональный параметр
|
||
#по умолчанию: -1
|
||
#тип - целое число
|
||
#cpu = 5
|
||
|
||
#максимальный размер памяти, в МБ
|
||
#опциональный параметр
|
||
#по умолчанию: -1
|
||
#тип - целое число
|
||
#ram = 1024
|
||
|
||
#максимальный размер объединенных виртуальных дисков в ГБ
|
||
#опциональный параметр
|
||
#по умолчанию: -1
|
||
#тип - целое число
|
||
#disk = 180
|
||
|
||
#максимальное количество отправленных/полученных сетевых узлов
|
||
#опциональный параметр
|
||
#по умолчанию: -1
|
||
#тип - целое число
|
||
#ext_traffic = 21
|
||
|
||
#максимальное количество назначенных общедоступных IP-адресов
|
||
#опциональный параметр
|
||
#по умолчанию: -1
|
||
#тип - целое число
|
||
#ext_ips = 29
|
||
#}
|
||
|
||
#список названий pools
|
||
#опциональный параметр
|
||
#игнорируется при создании ресурса, применяется только при обновлении
|
||
#тип - массив строк
|
||
#используется при обновлении
|
||
#uniq_pools = ["sep1_poolName1", "sep2_poolName2"]
|
||
|
||
#флаг для принудительного удаления ресурсной группы
|
||
#опциональный параметр
|
||
#тип - булев
|
||
#используется при удалении
|
||
#по умолчанию - true
|
||
#force = true
|
||
|
||
#флаг для удаления ресурсной группы, без возможности восстановления
|
||
#опциональный параметр
|
||
#тип - булев
|
||
#используется при удалении
|
||
#по умолчанию - true
|
||
#permanently = true
|
||
|
||
#восстановление группы после удаления
|
||
#опциональный параметр
|
||
#используется при редактировании ресурса
|
||
#тип - булев
|
||
#используется при обновлении
|
||
#по умолчанию - true
|
||
#restore = true
|
||
|
||
}
|
||
|
||
|
||
output "output" {
|
||
value = dynamix_resgroup.rg
|
||
}
|