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.

155 lines
5.6 KiB

7 months ago
/*
Пример использования
Ресурса account
Ресурс позволяет:
1. Создавать аккаунт
2. Редактировать аккаунт
3. Удалять аккаунт
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_account" "a" {
#имя аккаунта
#обязательный параметр
#тип - строка
#используется при создании и редактировании аккаунта
account_name = "new_my_account"
#имя пользователя - создателя аккаунта
#обязательный параметр
#тип - строка
username = "username@decs3o"
#доступность аккаунта
#опциональный параметр
#тип - булев
#может применяться при редактировании аккаунта
enable = true
#id аккаунта, позволяет сформировать .tfstate, если аккаунт имеет в платформе
#опциональный параметр
#тип - целое число
account_id = 11111
#электронная почта, на которую будет отправлена информация о доступе
#опциональный параметр
#тип - строка
#применяется при создании аккаунта
emailaddress = "fff@fff.ff"
#отправлять ли на электронную почту письмо о доступе
#опциональный параметр
#тип - булев
#применяется при создании аккаунта и редактировании аккаунта
send_access_emails = true
#добавление/редактирование/удаление пользователей, к которым привязан аккаунт
#опциональный параметр
#тип - объект, кол-во таких объектов не ограничено
users = [{
#id пользователя
#обязательный параметр
#тип - строка
user_id = "username_2@decs3o"
#тип доступа пользователя
#обязательный параметр
#тип - строка
#возможные параметры:
#R - чтение
#RCX - запись
#ARCXDU - админ
access_type = "R"
#рекурсивное удаление пользователя из всех ресурсов аккаунтов
#опциональный параметр
#тип - булев
#по умолчанию - false
#применяется при удалении пользователя из аккаунта
recursive_delete = true
}]
#ограничение используемых ресурсов
#опциональный параметр
#тип - объект
#используется при создании и редактировании
resource_limits = {
#кол-во используемых ядер cpu
#опциональный параметр
#тип - целое число
#если установлена -1 - кол-во неограиченно
cu_c = 2
#кол-во используемой RAM в МБ
#опциональный параметр
#тип - целое число
#если установлена -1 - кол-во неограиченно
cu_m = 1024
#размер дисков, в ГБ
#опциональный параметр
#тип - целое число
#если установлена -1 - размер неограичен
cu_d = 23
#кол-во используемых публичных IP
#опциональный параметр
#тип - целое число
#если установлена -1 - кол-во неограиченно
cu_i = 2
#ограничения на кол-во передачи данных, в ГБ
#опциональный параметр
#тип - целое число
#если установлена -1 - кол-во неограиченно
cu_np = 2
#кол-во графических процессоров
#опциональный параметр
#тип - целое число
#если установлена -1 - кол-во неограиченно
gpu_units = 2
}
#восстановление аккаунта
#опциональный параметр
#тип - булев
#применяется к удаленным аккаунтам
#по умолчанию - true
#restore = false
#мгновеное удаление аккаунта, если да - то аккаунт невозможно будет восстановить
#опциональный параметр
#тип - булев
#используется при удалении аккаунта
#по умолчанию - true
#permanently = true
}
output "test" {
value = dynamix_account.a
}