This commit is contained in:
2024-05-31 14:05:21 +03:00
parent 84b7a80e1b
commit db1760cb72
815 changed files with 58194 additions and 11049 deletions

View File

@@ -0,0 +1,42 @@
/*
Пример использования
Получение данных sep
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep" "sd" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
}
output "test" {
value = data.decort_cb_sep.sd
}
output "config" {
value = jsondecode(data.decort_cb_sep.sd.config)
}

View File

@@ -0,0 +1,42 @@
/*
Пример использования
Получение данных конфигурации sep
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep_config" "sc" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
}
output "test" {
value = data.decort_cb_sep_config.sc
}
output "config" {
value = jsondecode(data.decort_cb_sep_config.sc.config)
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение общих данных об использовании sep
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep_consumption" "scons" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
}
output "test" {
value = data.decort_cb_sep_consumption.scons
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Получение данных об используемых sep дисках
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep_disk_list" "sdl" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
#sep pool name
#необязательный параметр
#тип - строка
#pool_name = "sep_pool"
}
output "test" {
value = data.decort_cb_sep_disk_list.sdl
}

View File

@@ -0,0 +1,84 @@
/*
Пример использования
Получение списка sep
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep_list" "sl" {
#фильтр по sep id
#необязательный параметр
#тип - целое число
#by_id = 3
#фильтр по sep name
#необязательный параметр
#тип - строка
#name = "name"
#фильтр по gid
#необязательный параметр
#тип - целое число
#gid = 1
#фильтр по sep type
#необязательный параметр
#тип - строка
#type = "type"
#фильтр по provided physical node id
#необязательный параметр
#тип - целое число
#provided_by = 1
#фильтр по тех статусу
#необязательный параметр
#тип - строка
#tech_status = "status"
#фильтр по consumed physical node id
#необязательный параметр
#тип - целое число
#consumed_by = 1
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#страница
#необязательный параметр
#тип - целое число
#page = 3
#размер страницы
#необязательный параметр
#тип - целое число
#size = 2
}
output "test" {
value = data.decort_cb_sep_list.sl
}

View File

@@ -0,0 +1,45 @@
/*
Пример использования
Получение данных sep pool
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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
}
data "decort_cb_sep_pool" "sp" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
#sep pool name
#обязательный параметр
#тип - строка
pool_name = "sep_pool"
}
output "pool" {
value = {
for k, v in data.decort_cb_sep_pool.sp.pool : k => v
}
}

View File

@@ -0,0 +1,166 @@
/*
Пример использования
Ресурса sep
Ресурс позволяет:
1. Создавать sep.
2. Редактировать sep.
3. Удалять sep.
4. Конфигурировать sep.
*/
#Расскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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_sep" "s" {
#grid id
#обязательный параметр
#тип - целое число
gid = 212
#sep name
#обязательный параметр
#тип - строка
name = "test sep"
#тип sep
#обязательный параметр
#возможные значения - des, dorado, tatlin, hitachi
#тип - строка
type = "des"
#конфигурация sep
#обязательный параметр
#мб применен при создании или редактировании sep
#представляет собой json-строку
#тип - строка
config = file("./config.json")
#описание sep
#опциональный параметр
#используется при создании ресурса
#тип - строка
#desc = "rrrrr"
#изменение поля в конфигурации
#опциональный параметр
#может быть применен на уже созданном sep
#внимание, во избежание конфликтов не использовать с полем config
#тип - блок поля
#field_edit {
#имя поля
#обязательный параметр
#тип - строка
#field_name = "edgeuser_password"
#значение поля
#обязательный параметр
#тип - json строка
#field_value = "mosk"
#тип значения
#обязательный параметр
#возможные значения: list,dict,int,bool,str
#тип - строка
#field_type = "str"
#}
#предоставление/отключение доступа указанных аккаунтов к sep
#опциональный параметр, используется при редактировании и создании ресурса
#тип - массив целых чисел
#account_ids = [12, 245]
#предоставление/отключение доступа к пулу на sep
#опциональный параметр, может быть применен на уже созданном sep
#тип - блок доступа к пулу
#access_to_pool {
#имя pool
#обязательный параметр
#тип - строка
#pool_name = "pool name"
#id аккаунта
#опциональный параметр
#тип - целое число
#account_id_pool = 123
#id ресурсной группы
#опциональный параметр
#тип - целое число
#rg_id = 1234
#}
#доступность sep
#опциональный параметр
#может быть применен на уже созданном ресурсе
#по умолчанию - false
#тип - булев
#enable = false
#использование нодами
#опциональный параметр
#используется при редактировании и создании ресурса
#тип - массив целых чисел
#consumed_by = []
#обновление лимита объема
#опциональный параметр
#применяется на уж созданном ресурсе
#тип - булев
#upd_capacity_limit = true
#id provided nodes
#опциональный параметр
#используется при редактировании и создании ресурса
#тип - массив целых чисел
#provided_by = [16, 14, 15]
#отключение nodes
#опциональный параметр
#применяется на уже созданном ресурсе
#используется в связке с clear_physically
#по умолчанию - true
#тип - булев
#decommission = true
#физическое очищение nodes
#опциональный параметр
#используется при удалении ресурса
#внимание, во избежание конфликтов использовать только в связке с полем decommission = true
#тип - булев
#clear_physically = false
#добавление/удаление pools к/из sep
#опциональный параметр
#используется при редактировании и создании ресурса, состоит из имен pool
#тип - массив строк
#pools = ["data01", "data02"]
}
output "test" {
value = decort_cb_sep.s
}
output "config" {
value = jsondecode(decort_cb_sep.s.config)
}

View File

@@ -0,0 +1,75 @@
/*
Пример использования
Ресурс конфигурации sep
Ресурс позволяет:
1. Получить конфигурацию
2. Изменять конфигурацию
3. Изменять отдельные поля конфигурации
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
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_sep_config" "sc" {
#id sep
#обязательный параметр
#тип - целое число
sep_id = 1111
#конфигурация
#опциональный параметр
#используется для создания и изменения конфигурации
#тип - json строка
#config = file("./config.json")
#редактирование поля
#опциональный параметр
#используется при редактировании ресурса
#тип - блок полей
#field_edit {
#имя поля
#обязательный параметр
#тип - строка
#field_name = "edgeuser_password"
#значение поля
#обязательный параметр
#тип - строка
#field_value = "shshs"
#тип поля
#обязательный параметр
#возможные значения - int,bool, str, dict, list
#тип - строка
#field_type = "str"
#}
}
output "sep_config" {
value = decort_cb_sep_config.sc
}
output "sep_config_json" {
value = jsondecode(decort_cb_sep_config.sc.config)
}