/* Пример использования Ресурсов RG Ресурс позволяет: 1. Создавать 2. Редактировать 3. Удалять */ #Раскомментируйте этот код, #и внесите необходимые правки в версию и путь, #чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером /* terraform { required_providers { dynamix = { source = "basistech.ru/tf/dynamix" version = "" } } } */ provider "dynamix" { authenticator = "decs3o" #controller_url = controller_url = "https://ds1.digitalenergy.online" #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 }