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-decort/samples/cloudbroker/resource_rg/main.tf

209 lines
7.1 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.

/*
Пример использования
Ресурсов RG
Ресурс позволяет:
1. Создавать
2. Редактировать
3. Удалять
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
version = "<VERSION>"
source = "basis/decort/decort"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_cb_rg" "rg" {
#имя ресурсной группы
#обязательный параметр
#тип - строка
rg_name = "testing_rg_1"
#id аккаунта которому будет принадлежать ресурсная группа
#обязательный параметр
#тип - число
account_id = 123
#id сети
#обязательный параметр
#тип - число
gid = 1234
#лимиты ресурсов
#опциональные параметры
#тип - блок
#resource_limits {
#max number of cpu cores
#опциональный праметр при использовании блока
#тип - число
#cu_c = 12
#max size of aggregated vdisks in GB
#опциональный праметр при использовании блока
#тип - число
#cu_dm = 12
#max number of assigned public IPs
#опциональный праметр при использовании блока
#тип - число
#cu_i = 12
#max size of memory in MB
#опциональный праметр при использовании блока
#тип - число
#cu_m = 12
#max sent/received network transfer peering
#опциональный праметр при использовании блока
#тип - число
#cu_np = 12
#}
#имя владельца ресурсной группы
#опциональный параметр
#тип - строка
#owner = "owner name"
#тип сети по умолчанию для этой ресурсной группы.
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети.
#Допустимые значения: PRIVATE, PUBLIC, NONE.
#необязательный параметр
#тип - строка
#def_net_type = "NONE"
#ip cidr частной сети, если сеть по умолчанию PRIVATE
#необязательный параметр
#тип - строка
#ipcidr = "1.1.1.1"
#описание
#необязательный параметр
#тип - строка
#description = "qwerty"
#id внешней сети
#необязательный параметр
#тип - число
#ext_net_id = 123
#ip внешней сети
#необязательный параметр
#тип - строка
#ext_ip = "1.1.1.1"
#причина выполнения
#необязательный параметр
#тип - строка
#reason = "TEST"
#зарегистрировать компьюты в регистрационной системе
#необязательный параметр
#тип - булев
#register_computes = true
#список названий pools
#необязательный параметр
#тип - массив строк
#uniq_pools = ["sep1_poolName1", "sep2_poolName2"]
#блок для предоставления прав на ресурсную группу
#необязательный параметр
#тип - блок
access {
#имя юзера предоставляемому права
#обязательный праметр при использовании блока
#тип - строка
user = "kasim_baybikov_1@decs3o"
#тип прав
#обязательный параметр
#тип - строка
#разрешенные значения: "R", "RCX" or "ARCXDU"
right = "RCX"
#причина запроса
#необязательный параметр
#тип - строка
reason = "test"
}
#Установить сеть по умолчанию
#необязательный параметр
#тип - блок
#при добавлении блока, удалять его нельзя
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
#причина выполнения
#необязательный параметр
#тип - строка
reason = "TEST"
}
#может ли запуститься ВМ, если ресурсов CPU недостаточно
#необязательный параметр
#Допустимые значения: strict, loose.
#тип - строка
cpu_allocation_parameter = "loose"
#CPU allocation ratio
#необязательный параметр
#one pCPU = ratio*vCPU (zero or positive value)
#тип - число
cpu_allocation_ratio = 1
#флаг доступности ресурсной группы
#необязательный параметр
#тип - булевый
enable = true
#флаг для восстановления удаленной ресурсной группы
#необязательный параметр
#тип - булевый
#restore = false
#флаг для принудительного удаления ресурсной группы
#необязательный параметр
#тип - булевый
#перед удалением следует перевести ресурсную группу в статус disabled, выставив enable = false
force = true
#флаг для моментального удаления ресурсной группы
#необязательный параметр
#тип - булевый
permanently = true
}
output "output" {
value = decort_cb_rg.rg
}