/* Пример использования Ресурса account Ресурс позволяет: 1. Создавать аккаунт 2. Редактировать аккаунт 3. Удалять аккаунт */ #Расскомментируйте этот код, #и внесите необходимые правки в версию и путь, #чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером /* terraform { required_providers { decort = { version = "" source = "basis/decort/decort" } } } */ provider "decort" { authenticator = "decs3o" #controller_url = controller_url = "https://ds1.digitalenergy.online" #oauth2_url = oauth2_url = "https://sso.digitalenergy.online" allow_unverified_ssl = true } resource "decort_cb_account" "acc" { #имя аккаунта #обязательный параметр #тип - строка #используется при создании и редактировании аккаунта account_name = "new_my_account" #имя пользователя - создателя аккаунта #обязательный параметр #тип - строка username = "username@decs3o" #доступность аккаунта #необязательный параметр #тип - булев тип #может применяться при создании аккаунта и редактировании аккаунта enable = true #электронная почта, на которую будет отправлена информация о доступе #необязательный параметр #тип - строка #применяется при создании аккаунта emailaddress = "fff@fff.ff" #отправлять ли на электронную почту письмо о доступе #необязательный параметр #тип - булев тип #применяется при создании аккаунта и редактировании аккаунта send_access_emails = true #пары sep_id и sep_pool_name #необязательный параметр #тип - список строк #применяется при создании аккаунта и редактировании аккаунта #каждая строка представляет собой пару, sepID_sepPoolName uniq_pools = ["sep1_poolName1", "sep2_poolName2"] #ограничение используемых ресурсов #необязательный параметр #тип - объект #используется при создании и редактировании resource_limits { #кол-во используемых ядер cpu #необязательный параметр #тип - число #если установлена -1 - кол-во неограничено cu_c = 2 #кол-во используемой RAM в МБ #необязательный параметр #тип - число #если установлена -1 - кол-во неограничено cu_m = 1024 #размер дисков, в ГБ #необязательный параметр #тип - число #если установлена -1 - размер неограничен cu_dm = 23 #кол-во используемых публичных IP #необязательный параметр #тип - число #если установлена -1 - кол-во неограничено cu_i = 2 #ограничения на кол-во передачи данных, в ГБ #необязательный параметр #тип - число #если установлена -1 - кол-во неограничено cu_np = 2 #кол-во графических процессоров #необязательный параметр #тип - число #если установлена -1 - кол-во неограничено gpu_units = 2 } #добавление/редактирование/удаление пользователей, к которым привязан аккаунт #необязательный параметр #тип - объект, кол-во таких объектов не ограничено /*users { #id пользователя #обязательный параметр #тип - строка user_id = "username_2@decs3o" #тип доступа пользователя #обязательный параметр #тип - строка #возможные параметры: #R - чтение #RCX - запись #ARCXDU - админ access_type = "R" #рекурсивное удаление пользователя из всех ресурсов аккаунтов #необязательный параметр #тип - булев тип #по-умолчанию - false #применяется при удалении пользователя из аккаунта recursive_delete = true } */ #параметр распределения CPU #необязательный параметр #тип - строка #если "strict" виртуальная машина не может быть запущена из-за нехватки ресурсов. #"loose" позволяет запускать виртуальную машину, если недостаточно ресурсов. #cpu_allocation_parameter = "strict" #параметр коэффициента распределения CPU #необязательный параметр #тип - число #один pCPU = коэффициент*vCPU (принимает нулевое или положительное значение) #cpu_allocation_ratio = 1 #мгновеное удаление аккаунта, если да - то аккаунт невозможно будет восстановить #необязательный параметр #тип - булев тип #используется при удалении аккаунта #по-умолчанию - false #permanently = true #флаг для восстановление аккаунта из корзины #необязательный параметр #тип - булев тип #restore = true } output "test" { value = decort_cb_account.acc }