This commit is contained in:
2026-06-02 11:28:16 +03:00
parent af79f6ab3e
commit c734dcfff7
254 changed files with 10439 additions and 3751 deletions

View File

@@ -293,6 +293,7 @@
- cb_vins
- cb_vins_static_route
- cb_virtual_image
- decort_cb_multi_image
- cb_zone
- sdn
- data:
@@ -301,15 +302,20 @@
- sdn_access_group_user_list
- sdn_default_security_policy_list
- sdn_segment
- sdn_segment_get_status
- sdn_segment_list
- sdn_logical_port
- sdn_logical_port_get_by_unique_identifier
- sdn_logical_port_list
- sdn_hypervisor
- sdn_hypervisor_list
- sdn_network_object_group
- sdn_network_object_group_list
- resources:
- sdn_access_group
- sdn_segment
- sdn_logical_port
- sdn_hypervisor
- sdn_network_object_group
## Как пользоваться примерами

View File

@@ -62,12 +62,6 @@ data "decort_disk_list" "dl" {
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "B" - boot_disk, "D" - data_disk
#type = "D"
#id SEP для получения списка дисков
#опциональный параметр
#тип - целое число
@@ -98,6 +92,16 @@ data "decort_disk_list" "dl" {
#опциональный параметр
#тип - целое число
#storage_policy_id = 1
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#rg_id = 1281
#фильтр по id ВМ
#опциональный параметр
#тип - целое число
#compute_id = 123
}
output "test" {

View File

@@ -58,12 +58,6 @@ data "decort_disk_list_deleted" "dld" {
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка

View File

@@ -1,51 +0,0 @@
/*
Пример использования
Получение списка типов дисков
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_disk_list_types" "dlt" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.decort_disk_list_types.dlt
}

View File

@@ -1,52 +0,0 @@
/*
Пример использования
Получение списка типов дисков, но детально
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_disk_list_types_detailed" "dltd" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.decort_disk_list_types_detailed.dltd
}

View File

@@ -49,12 +49,6 @@ data "decort_disk_list_unattached" "dlu" {
#тип - строка
#status = "ENABLED"
#фильтр по типу
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#фильтр по id аккаунта
#опциональный параметр
#тип - целое число

View File

@@ -53,6 +53,12 @@ resource "decort_image_from_blank_compute" "img" {
#используется при создании
type = "linux"
#id политики хранения
#обязательный параметр
#тип - целое число
#используется при создании
storage_policy_id = 111
#юзернейм для образа
#опциональный параметр
#тип - строка

View File

@@ -55,10 +55,10 @@ resource "decort_image_from_platform_disk" "img" {
type = "linux"
#драйверы компьютов, подходящие для данного образа
#обязательный параметр
#опциональный параметр
#тип - массив строк
#используется при создании
drivers = ["KVM_X86"]
#drivers = ["KVM_X86"]
#имя пользователя для образа
#опциональный параметр

View File

@@ -112,6 +112,12 @@ resource "decort_kvmvm" "comp" {
#используется при создании
#without_boot_disk = true
#создание без образа ОС
#опциональный параметр
#тип - булев
#используется при создании
#create_blank = false
#необходимость выравнивать ВМ по NUMA
#опциональный параметр
#возможные значения - "none, "strict", "loose"
@@ -120,6 +126,12 @@ resource "decort_kvmvm" "comp" {
#используется при создании и обновлении
#numa_affinity = "loose"
#id образа CD-ROM для загрузки
#опциональный параметр
#тип - целое число
#используется при создании и обновлении
#alt_boot_id = 1
#необходимость запускать ВМ на выделенных CPU ядрах
#опциональный параметр
#по умолчанию - false
@@ -160,11 +172,6 @@ resource "decort_kvmvm" "comp" {
#тип - целое число
#size = 5
#тип диска
#опциональный параметр
#тип - строка
#disk_type = "D"
#id сепа
#опциональный параметр
#тип - целое число
@@ -228,7 +235,7 @@ resource "decort_kvmvm" "comp" {
#тип - строка
#policy = "RECOMMENDED"
#режим проверки
#режим проверки
#обязательный параметр
#возможные значения - ANY, EQ, NE
#тип - строка
@@ -263,7 +270,7 @@ resource "decort_kvmvm" "comp" {
#тип - строка
#policy = "RECOMMENDED"
#режим проверки
#режим проверки
#обязательный параметр
#возможные значения - ANY, EQ, NE
#тип - строка
@@ -287,20 +294,6 @@ resource "decort_kvmvm" "comp" {
#affinity_label = "test4"
#наименование системы
#опциональный параметр
#по умолчанию - не задан
#тип - строка
#используется при создании
#is = ""
#назначение вм
#опциональный параметр
#по умолчанию - не задан
#тип - строка
#используется при создании
#ipa_type = ""
#id экстра дисков
#опциональный параметр
#тип - список целых чисел
@@ -342,8 +335,8 @@ resource "decort_kvmvm" "comp" {
#weight = 15
#максимальный объём данных, который может быть передан за одну итерацию
#используется только с сетями типа "DPDK" и "EXTNET"
#возможные значения - 1-9216
#используется с сетями типа "DPDK", "TRUNK", "EXTNET"
#возможные значения - 1500-9216
#опциональный параметр
#тип - целое число
#mtu = 1500
@@ -365,18 +358,19 @@ resource "decort_kvmvm" "comp" {
#используется только с сетями типа "DPDK" и "VFNIC"
#опциональный параметр
#тип - целое число
#net_mask = 32
#net_mask = 32
#}
#группы безопасности
#опциональный параметр
#тип - блок
#не применяется к сетям типа "VFNIC", "TRUNK", "SDN"
#используется при создании и обновлении
#security_groups {
#тип сети
#обязательный параметр
#тип - строка
#возможные значения - "VINS", "EXTNET", "VFNIC", "DPDK", "SDN", "TRUNK" (при выборе типа DPDK, необходимо указать hp_backed = true)
#возможные значения - "VINS", "EXTNET", "DPDK" (при выборе типа DPDK, необходимо указать hp_backed = true)
#net_type = "VINS"
#id сети
@@ -598,17 +592,17 @@ resource "decort_kvmvm" "comp" {
#используется при создании и обновлении
#network_interface_naming = "ens"
#идентификатор экземпляра zone
#идентификатор экземпляра zone
#опциональный параметр
#тип - целое число
#тип - целое число
#используется при создании и обновлении
#zone_id = 1111
#версия ОС, установленная на ВМ
#опциональный параметр
#опциональный параметр
#тип - строка
#используется при создании и обновлении
#os_version = "name"
#os_version = "name"
}
output "test" {

View File

@@ -188,12 +188,19 @@ resource "decort_vins" "vins" {
#используется при создании и обновлении
#dns = ["1.1.1.1", "2.2.2.2"]
#идентификатор экземпляра zone
#идентификатор экземпляра zone
#опциональный параметр
#тип - целое число
#тип - целое число
#используется при создании и обновлении
#zone_id = 1111
#флаг, указывающий, включены ли группы безопасности для этой сети
#опциональный параметр
#тип - булев
#используется при создании
#значение по умолчанию - false
#enable_secgroups = false
}
output "test" {

View File

@@ -62,12 +62,6 @@ data "decort_cb_disk_list" "dl" {
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#фильтр по sep id
#опциональный параметр
#тип - целое число
@@ -99,6 +93,15 @@ data "decort_cb_disk_list" "dl" {
#тип - целое число
#storage_policy_id = 1
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#rg_id = 1281
#фильтр по id ВМ
#опциональный параметр
#тип - целое число
#compute_id = 123
}
output "test" {

View File

@@ -57,12 +57,6 @@ data "decort_cb_disk_list_deleted" "dld" {
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#возможные типы: "b" - boot_disk, "d" - data_disk
#тип - строка
#type = "d"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#формат - "+поле" по возрастанию / "-поле" по убыванию

View File

@@ -1,52 +0,0 @@
/*
Пример использования
Получение списка типов дисков (недетализированное)
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_disk_list_types" "dlt" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#формат - "+поле" по возрастанию / "-поле" по убыванию
#тип - строка
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#если не задан - выводятся все доступные данные
#тип - целое число
#page = 2
#размер страницы
#опциональный параметр
#если не задан - выводятся все доступные данные
#тип - целое число
#size = 3
}
output "test" {
value = data.decort_cb_disk_list_types.dlt
}

View File

@@ -1,52 +0,0 @@
/*
Пример использования
Получение списка типов дисков, но детально
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_disk_list_types_detailed" "dltd" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#формат - "+поле" по возрастанию / "-поле" по убыванию
#тип - строка
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#если не задан - выводятся все доступные данные
#тип - целое число
#page = 2
#размер страницы
#опциональный параметр
#если не задан - выводятся все доступные данные
#тип - целое число
#size = 3
}
output "test" {
value = data.decort_cb_disk_list_types_detailed.dltd
}

View File

@@ -47,12 +47,6 @@ data "decort_cb_disk_list_unattached" "dlu" {
#тип - строка
#status = "ENABLED"
#фильтр по типу
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#фильтр по id аккаунта
#опциональный параметр
#тип - целое число

View File

@@ -138,6 +138,13 @@ resource "decort_cb_disk" "my_disk01" {
#по умолчанию - false
#используется при создании и обновлении
#blk_discard = false
#размер блока диска
#опциональный параметр
#доступные значения - "4k", "512", "512e"
#тип - строка
#используется при создании и обновлении
#block_size = "4k"
}
output "test" {

View File

@@ -80,13 +80,6 @@ resource "decort_cb_cdrom_image" "my_image" {
#используется при создании
#pool_name = "vmstor"
#архитектура системы образа
#опциональный параметр
#тип - строка
#доступные значения: "X86_64"
#используется при создании
#architecture = "X86_64"
#доступность образа
#опциональный параметр
#тип - булев

View File

@@ -56,6 +56,12 @@ resource "decort_cb_image_from_blank_compute" "my_image" {
#используется при создании
image_type = "linux"
#id политики хранения
#обязательный параметр
#тип - целое число
#используется при создании
storage_policy_id = 111
#имя пользователя для образа
#опциональный параметр
#тип - строка

View File

@@ -56,7 +56,6 @@ resource "decort_cb_image_from_platform_disk" "my_image" {
#используется при создании
image_type = "linux"
#имя пользователя для образа
#опциональный параметр
#тип - строка

View File

@@ -0,0 +1,100 @@
/*
Пример использования
Ресурса multi image
Ресурс позволяет:
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_multi_image" "my_multi_image" {
#имя мульти-образа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "test_multi_image"
#список id реальных образов, на основе которых создаётся мульти-образ
#обязательный параметр
#тип - массив целых чисел
#используется при создании и обновлении (добавляет/удаляет привязки)
target_ids = [6125, 6126]
#id аккаунта владельца образа
#опциональный параметр
#тип данных - целое число
#используется при создании и обновлении
#account_id = 57252
#является ли образ загрузочным
#опциональный параметр
#тип - булев
#используется при создании и обновлении
#bootable = true
#поддержка hot resize
#опциональный параметр
#тип - булев
#используется при создании и обновлении
#hot_resize = true
#имя пользователя
#опциональный параметр
#тип - строка
#используется при создании и обновлении
#username = "Valera"
#пароль пользователя
#опциональный параметр
#тип - строка
#используется при создании и обновлении
#password = "123"
#доступность образа
#опциональный параметр
#тип - булев, по умолчанию true
#используется при создании и обновлении
#enabled = false
#настройка доступа образа аккаунтам
#опциональный параметр
#пустой массив - удаление всех доступов, если они были
#тип - массив целых чисел
#используется при создании и обновлении
#shared_with = [28096, 57121]
#установка computeci
#опциональный параметр
#чтобы сбросить, необходимо передать 0
#тип - целое число
#используется при создании и обновлении
#computeci_id = 1
}
output "test" {
value = decort_cb_multi_image.my_multi_image
}

View File

@@ -83,6 +83,12 @@ resource "decort_cb_kvmvm" "comp" {
#используется при создании
#without_boot_disk = true
#создание без образа ОС
#опциональный параметр
#тип - булев
#используется при создании
#create_blank = false
#размер загрузочного диска
#опциональный параметр
#тип - целое число
@@ -130,7 +136,7 @@ resource "decort_cb_kvmvm" "comp" {
#id образа CD-ROM для загрузки
#опциональный параметр
#тип - целое число
#используется при обновлении, при повторном старте вм
#используется при создании и обновлении
#alt_boot_id = 1
#необходимость выравнивать ВМ по NUMA
@@ -191,11 +197,7 @@ resource "decort_cb_kvmvm" "comp" {
#возможные варианты: "none" или "writethrough"
#cache = "none"
#тип диска
#опциональный параметр
#тип - строка
#disk_type = "D"
#опциональный параметр
#тип - целое число
#sep_id = 1
@@ -230,23 +232,31 @@ resource "decort_cb_kvmvm" "comp" {
#по умолчанию - false
#blk_discard = false
#блок для управления IO-лимитами диска
#размер блока диска
#опциональный параметр
#тип - строка
#возможные варианты: "512", "512e", "4k"
#block_size = "4k"
#настройки лимитов операций ввода/вывода диска
#опциональный параметр
#тип - блок
#тип вложенных полей - целое число
#используется при создании и обновлении
#iotune {
#read_bytes_sec = 0
#read_bytes_sec_max = 0
#read_iops_sec = 0
#read_iops_sec_max = 0
#size_iops_sec = 0
#total_bytes_sec = 0
#read_bytes_sec = 0
#read_bytes_sec_max = 0
#read_iops_sec = 0
#read_iops_sec_max = 0
#size_iops_sec = 0
#total_bytes_sec = 0
#total_bytes_sec_max = 0
#total_iops_sec = 3000
#total_iops_sec_max = 0
#write_bytes_sec = 0
#total_iops_sec = 3000
#total_iops_sec_max = 0
#write_bytes_sec = 0
#write_bytes_sec_max = 0
#write_iops_sec = 0
#write_iops_sec_max = 0
#write_iops_sec = 0
#write_iops_sec_max = 0
#}
#}
@@ -326,20 +336,6 @@ resource "decort_cb_kvmvm" "comp" {
#используется при создании и обновлении
#affinity_label = "test4"
#наименование системы
#опциональный параметр
#по умолчанию - не задан
#тип - строка
#используется при создании
#is = ""
#назначение вм
#опциональный параметр
#по умолчанию - не задан
#тип - строка
#используется при создании
#ipa_type = ""
#id экстра дисков
#опциональный параметр
#тип - список чисел
@@ -387,8 +383,8 @@ resource "decort_cb_kvmvm" "comp" {
#weight = 15
#максимальный объём данных, который может быть передан за одну итерацию
#используется только с сетями типа "DPDK" и "EXTNET"
#возможные значения - 1-9216
#используется с сетями типа "DPDK", "TRUNK", "EXTNET"
#возможные значения - 1500-9216
#опциональный параметр
#тип - целое число
#mtu = 1500
@@ -416,12 +412,13 @@ resource "decort_cb_kvmvm" "comp" {
#группы безопасности
#опциональный параметр
#тип - блок
#не применяется к сетям типа "VFNIC", "TRUNK", "SDN"
#используется при создании и обновлении
#security_groups {
#тип сети
#обязательный параметр
#тип - строка
#возможные значения - "VINS", "EXTNET", "VFNIC", "DPDK", "SDN", "TRUNK" (при выборе типа DPDK, необходимо указать hp_backed = true)
#возможные значения - "VINS", "EXTNET", "DPDK" (при выборе типа DPDK, необходимо указать hp_backed = true)
#net_type = "VINS"
#id сети
@@ -714,11 +711,17 @@ resource "decort_cb_kvmvm" "comp" {
#zone_id = 1111
#версия ОС, установленная на ВМ
#опциональный параметр
#опциональный параметр
#тип - строка
#используется при создании и обновлении
#os_version = "name"
#вес ВМ
#опциональный параметр
#тип - целое число
#используется при создании и обновлении
#weight = 1
#включение режима unmap для boot диска
#опциональный параметр
#тип - булев

View File

@@ -62,6 +62,12 @@ data "decort_cb_node_list" "nodes" {
#тип - строка
#status = "disabled"
#фильтр по id зоны
#опциональный параметр
#значение по умолчанию - 0
#тип - целое число
#zone_id = 54
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка

View File

@@ -56,11 +56,15 @@ resource "decort_cb_zone" "zone" {
#по умолчанию - false
#используется при создании и обновлении
#auto_start = false
#включение/отключение drs
#опциональный параметр
#тип - булев
#значение по умолчанию - false
#используется при создании
#drs = false
}
output "test" {
value = decort_cb_zone.zone
}

View File

@@ -65,15 +65,18 @@ data "decort_sdn_access_group_list" "name" {
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#тип - строка
#created_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_to = "2023-01-01T00:00:00Z"
#фильтр по отображаемому имени владельца группы доступа
#опциональный параметр
#тип - строка
#owner_display_name = "owner_name"
}
output "test" {

View File

@@ -106,13 +106,11 @@ data "decort_sdn_access_group_user_list" "name" {
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_to = "2023-01-01T00:00:00Z"
}

View File

@@ -1,48 +1,44 @@
/*
Пример использования
Получение информации о статусе segment по ее id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_sdn_segment_get_status" "name" {
#идентификатор сегмента
#обязательный параметр
#тип - строка
segment_id = "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
#идентификатор версии
#опциональный параметр
#тип - целое число
#version_id = 378849
#подробный статус
#опциональный параметр
#тип - булев
#detailed = true
}
output "test" {
value = data.decort_sdn_segment_get_status.name
}
/*
Пример использования
Получение информации о hypervisor по его id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_sdn_hypervisor" "test" {
#имя гипервизора
#обязательный параметр
#тип - строка
name = "name"
#объем информации
#опциональный параметр
#тип - строка
#возможные значения - detailed, general
#port_info = "detailed"
}
output "test" {
value = data.decort_sdn_hypervisor.test
}

View File

@@ -0,0 +1,96 @@
/*
Пример использования
Получение информации о списке гипервизоров
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_sdn_hypervisor_list" "test" {
#номер страницы результата
#опциональный параметр
#тип - целое число
#page = 1
#количество результатов на странице
#опциональный параметр
#тип - целое число
#per_page = 2
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#возможные значения - name, hostname, last_sync, display_name, ip, created_at, updated_at
#sort_by = "created_at"
#порядок сортировки
#опциональный параметр
#тип - строка
#возможные значения - asc, desc
#sort_order = "asc"
#объем информации
#опциональный параметр
#тип - строка
#возможные значения - detailed, general
#port_info = "detailed"
#хостнейм
#опциональный параметр
#тип - строка
#hostname = "hostname"
#фильтр по отображаемому имени
#опциональный параметр
#тип - строка
#display_name = "name"
#IP
#опциональный параметр
#тип - строка
#ip = "192.168. 123.132"
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#created_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#created_to = "2023-01-01T00:00:00Z"
#фильтр по нижней границе даты обновления
#опциональный параметр
#тип - строка
#updated_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты обновления
#опциональный параметр
#тип - строка
#updated_to = "2023-01-01T00:00:00Z"
}
output "test" {
value = data.decort_sdn_hypervisor_list.test
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования ресурса гипервизора
Ресурс позволяет:
1. Редактировать гипервизор
2. Удалять гипервизор
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
resource "decort_sdn_hypervisor" "test" {
#имя гипервизора (текущее)
#обязательный параметр
#тип - строка
#используется при обновлении
name = "name"
#отображаемое имя гипервизора (новое)
#обязательный параметр
#тип - строка
#используется при обновлении
display_name = "name"
}
output "test" {
value = decort_sdn_hypervisor.test
}

View File

@@ -92,16 +92,24 @@ data "decort_sdn_logical_port_list" "test" {
#тип - булев
#enabled = false
#фильтр по статусу операции
#опциональный параметр
#тип - строка
#operation_status = "Synchronized"
#фильтр по статусу гипервизора
#опциональный параметр
#тип - строка
#hypervisor_status = "Warning"
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_to = "2023-01-01T00:00:00Z"
#номер страницы результата

View File

@@ -55,12 +55,6 @@ resource "decort_sdn_logical_port" "test" {
#используется при создании и обновлении
enabled = true
#исключение порта из правил фаервола
#обязательный параметр
#тип - булев
#используется при создании и обновлении
is_excluded_from_firewall = true
#связанный гипервизор
#обязательный параметр
#тип - строка
@@ -88,7 +82,6 @@ resource "decort_sdn_logical_port" "test" {
#уникальный идентификатор порта
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#используется при создании
#unique_identifier = "b2c3d4e5-f6g7-8901-h2i3-j4k5l6m7n8o9"
@@ -123,14 +116,35 @@ resource "decort_sdn_logical_port" "test" {
#MAC адрес
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#mac = "^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$"
#}
#метки
#опциональный параметр
#тип - блок
#используется при создании и обновлении
#labels {
# #идентификатор виртуальной машины
# #опциональный параметр
# #тип - строка
# #vm_id = "vmid-420"
# #имя виртуальной машины
# #опциональный параметр
# #тип - строка
# #vm_name = "my-vm"
#}
#флаг инициации миграции на гипервизор из поля hypervisor
#опциональный параметр
#тип - булев
#значение по умолчанию - false
#используется при обновлении
#migrate = true
#флаг принудительного удаления
#опциональный параметр
#тип - булев
#значение по умолчанию - null
#используется при обновлении
#force = true
}

View File

@@ -1,39 +1,37 @@
/*
Пример использования
Получение данных vgpu
*/
#Раскомментируйте код ниже,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vgpu" "vgpu" {
#id vgpu
#обязательный параметр
#тип - целое число
vgpu_id = 1111
}
output "test" {
value = data.decort_vgpu.vgpu
}
/*
Пример использования
Получение информации о группе сетевых объектов по её id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_sdn_network_object_group" "name" {
#идентификатор группы сетевых объектов
#обязательный параметр
#тип - строка
net_object_group_id = "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
}
output "test" {
value = data.decort_sdn_network_object_group.name
}

View File

@@ -0,0 +1,88 @@
/*
Пример использования
Получение списка групп сетевых объектов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_sdn_network_object_group_list" "name" {
#фильтр по имени группы сетевых объектов
#опциональный параметр
#тип - строка
#name = "my-group"
#фильтр по id группы доступа
#опциональный параметр
#тип - строка
#access_group_id = "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
#номер страницы результата
#опциональный параметр
#тип - целое число
#page = 1
#количество результатов на странице
#опциональный параметр
#тип - целое число
#per_page = 10
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#возможные значения - name, created_at, updated_at
#sort_by = "name"
#порядок сортировки
#опциональный параметр
#тип - строка
#возможные значения - asc, desc
#sort_order = "asc"
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_from = "2024-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_to = "2025-01-01T00:00:00Z"
#фильтр по нижней границе даты обновления
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#updated_from = "2024-01-01T00:00:00Z"
#фильтр по верхней границе даты обновления
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#updated_to = "2025-01-01T00:00:00Z"
}
output "test" {
value = data.decort_sdn_network_object_group_list.name
}

View File

@@ -0,0 +1,101 @@
/*
Пример использования
Ресурс позволяет:
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_sdn_network_object_group" "name" {
#имя группы сетевых объектов
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "my-net-obj-group"
#id группы доступа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
access_group_id = "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
#описание группы сетевых объектов
#обязательный параметр
#тип - строка
#используется при создании и обновлении
description = "description"
#привязка и отвязка l2 портов
#опциональный параметр
#тип - блок
#используется при создании
#l2_connection_ports_bindings {
#id порта
#обязательный параметр
#тип - строка
#port_id = "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
#версия порта
#обязательный параметр
#тип - целое число
#port_version = 1747141621952
#}
#список сетевых адресов
#опциональный параметр
#тип - блок (может быть несколько)
#используется при создании и обновлении
#addresses {
#тип сетевого адреса
#обязательный параметр
#тип - строка
#net_address_type = "ip"
#IP-адрес
#опциональный параметр
#тип - строка
#ip_addr = "192.168.1.10"
#конец диапазона IP-адресов
#опциональный параметр
#тип - строка
#ip_addr_range_end = "192.168.1.20"
#IP-префикс (CIDR)
#опциональный параметр
#тип - строка
#ip_prefix = "192.168.1.0/24"
#MAC-адрес
#опциональный параметр
#тип - строка
#mac_addr = "aa:bb:cc:dd:ee:ff"
#}
}
output "test" {
value = decort_sdn_network_object_group.name
}

View File

@@ -76,26 +76,28 @@ data "decort_sdn_segment_list" "name" {
#фильтр по нижней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты создания
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#created_to = "2023-01-01T00:00:00Z"
#фильтр по нижней границе даты обновления
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#updated_from = "2023-01-01T00:00:00Z"
#фильтр по верхней границе даты обновления
#опциональный параметр
#тип - строка
#значение по умолчанию - null
#updated_to = "2023-01-01T00:00:00Z"
#фильтр по статусу операции
#опциональный параметр
#тип - строка
#возможные значения - Idle, SynchronizingAtCore, SynchronizingAtOVN, Synchronized, NoHypervisorAtOVN, FailedAtCore, TemporaryFailedAtCore
#operation_status = "Idle"
}
output "test" {

View File

@@ -138,10 +138,16 @@ resource "decort_sdn_segment" "name" {
#enabled = true
#}
#тип сегмента
#опциональный параметр
#тип - строка
#возможные значения - User, ExtNet
#используется при создании и обновлении
#type = "User"
#флаг принудительного удаления
#опциональный параметр
#тип - булев
#значение по умолчанию - null
#используется при обновлении
#force = true
}