This commit is contained in:
2026-06-19 17:45:18 +03:00
parent c00c608ce9
commit 89c77ddcbe
1324 changed files with 199523 additions and 1 deletions

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение информации об уже существующем виртуальном сетевом сегменте (Virtual Network Segment, ViNS).
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins" "vins" {
#обязательный параметр
#id желаемого vins
#тип - целое число
vins_id = 10101
}
output "test" {
value = data.decort_vins.vins
}

View File

@@ -0,0 +1,44 @@
/*Deprecated
Данный datasource является **deprecated** и будет удалён в следующих версиях. Вместо него неоходимо использовать datasource **decort_audit_list**.
*/
/*
Пример использования
Получение списка записей аудита для внутренней сети vins.
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_audits" "vins_audits" {
#обязательный параметр
#id желаемого vins
#тип - целое число
vins_id = 10101
}
output "test" {
value = data.decort_vins_audits.vins_audits
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение информации о внешних сетях виртуальной сети (Vins).
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_ext_net_list" "vins_ext_net_list" {
#обязательный параметр
#id желаемого vins
#тип - целое число
vins_id = 10101
}
output "test" {
value = data.decort_vins_ext_net_list.vins_ext_net_list
}

View File

@@ -0,0 +1,40 @@
/*
Пример использования
Получение информации о списке зарезервированных IP адресов виртуальной сети (Vins)
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_ip_list" "vins_ip_list" {
#обязательный параметр
#id желаемого vins
#тип - целое число
vins_id = 10101
}
output "test" {
value = data.decort_vins_ip_list.vins_ip_list
}

View File

@@ -0,0 +1,99 @@
/*
Пример использования
Получение списка удаленных виртуальных сетей (Vins).
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_list" "vl" {
#фильтр по id vins
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени vins
#опциональный параметр
#тип - строка
#name = "test"
#id аккаунта для получения списка балансировщиков нагрузки
#опциональный параметр
#тип - целое число
#account_id = 11111
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#rg_id = 100
#фильтр по IP внешней сети
#опциональный параметр
#тип - строка
#ext_ip = "test"
#фильтр по VNF Device id
#опциональный параметр
#тип - целое число
#vnf_dev_id = 14
#включение удаленных vins в результат
#опциональный параметр
#тип - булев
#если не задан - выводятся все неудаленные данные
#include_deleted = true
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#поиск по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 1
#id зоны
#опциональный параметр
#тип - целое число
#значение по умолчанию - 0
#zone_id = 11
}
output "test" {
value = data.decort_vins_list.vl
}

View File

@@ -0,0 +1,79 @@
/*
Пример использования
Получение списка удаленных vins
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_list_deleted" "vins_list_deleted" {
#фильтр по id vins
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени vins
#опциональный параметр
#тип - строка
#name = "test"
#id аккаунта для получения списка балансировщиков нагрузки
#опциональный параметр
#тип - целое число
#account_id = 11111
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#rg_id = 100
#фильтр по IP внешней сети
#опциональный параметр
#тип - строка
#ext_ip = "test"
#фильтр по id vnfDevices
#опциональный параметр
#тип - целое число
#vnfdev_id = 11111
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#size = 1
}
output "test" {
value = data.decort_vins_list_deleted.vins_list_deleted
}

View File

@@ -0,0 +1,40 @@
/*
Пример использования
Получение списка natRule vins
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_nat_rule_list" "vins_nat_rule_list" {
#id желаемого vins
#обязательный параметр
#тип - целое число
vins_id = 10101
}
output "test" {
value = data.decort_vins_nat_rule_list.vins_nat_rule_list
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Получение информации о статическом пути
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_static_route" "route" {
#id vins в котором добавлены routes
#обязательный параметр
#тип - целое число
vins_id = 1111
#id route
#обязательный параметр
#тип - целое число
route_id = 1
}
output "route" {
value = data.decort_vins_static_route.route
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение информации о списке статических путей
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_static_route_list" "list" {
#id vins в котором добавлены routes
#обязательный параметр
#тип - целое число
vins_id = 1111
}
output "list" {
value = data.decort_vins_static_route_list.list
}

View File

@@ -0,0 +1,208 @@
/*
Пример использования
Управление vins
Ресурс позволяет:
1. Создавать vins
2. Удалять vins
3. Восстанвливать vins
4. Добавлять и убирать подключение к внешней сети
5. Резервировать и освобождать ip для vins
6. Добавлять и удалять natrule
7. Перезапускать и редеплоить vnfdev
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins" "vins" {
#имя создаваемого ресурса
#обязательный параметр
#тип - строка
#используется при создании
name = "Test_name"
#id ресурсной группы для создания ресурса
#должен быть указан или rg_id или account_id
#опциональный параметр
#тип - целое число
#используется при создании
rg_id = 10101
#id аккаунта для создания ресурса
#должен быть указан или rg_id или account_id
#опциональный параметр
#тип - целое число
#используется при создании
account_id = 2023
#id внешней сети для подключения к ней ресурса
#опциональный параметр
#тип - целое число
#используется при создании и обновлении
#ext_net_id = 2222
#ip внешней сети для подключения к нему ресурса
#опциональный параметр
#тип - строка
#используется при создании
#ext_ip_addr = "1.1.1.1"
#private network IP CIDR
#опциональный параметр
#тип - строка
#используется при создании
#ipcidr = "192.168.0.1"
#количество зарезервированных адресов на момент создания
#опциональный параметр
#тип - целое число
#используется при создании
#pre_reservations_num = 2
#grid (platform) ID
#опциональный параметр
#тип - целое число
#используется при создании
#gid = 2002
#описание
#опциональный параметр
#тип - строка
#используется при создании и обновлении
#desc = "Description"
#ручное подключение и отключение ресурса
#опциональный параметр
#тип - булев
#используется при создании и обновлении
#enable = true
#флаг для удаления VINS, без возможности восстановления
#опциональный параметр
#тип - булев
#используется при удалении
#permanently = true
#удаляет за собой все зависимые ресурсы
#опциональный параметр
#тип - булев
#используется при удалении
#force = true
#блок для резервирования ip
#опциональный параметр
#тип - блок ip
#используется при создании и обновлении
#ip {
#тип подключения
#обязательный параметр
#тип - строка
#type = "DHCP"
#ip который необходимо зарезервировать
#опциональный параметр
#тип - строка
#ip_addr = "192.168.5.5"
#mac который необходимо зарезервировать
#опциональный параметр
#тип - строка
#mac_addr = "ff:ff:ff:ff:ff:ff"
#}
#блок для добавления natRule
#опциональный параметр
#тип - блок правил nat
#используется при создании и обновлении
#nat_rule {
#ip внутренний
#опциональный параметр
#тип - строка
#int_ip = "192.168.0.28"
#внутренний порт
#опциональный параметр
#тип - целое число
#int_port = 80
#начало диапазона внешних портов
#опциональный параметр
#тип - целое число
#ext_port_start = 8001
#конец диапазона внешних портов
#опциональный параметр
#тип - целое число
#ext_port_end = 8001
#протокол natRule
#опциональный параметр
#тип - строка
#proto = "tcp"
#}
#восстановление ресурса
#опциональный параметр
#тип - булев
#используется при обновлении
#restore = true
#перезапуск vnfDev
#опциональный параметр
#тип - булев
#используется при обновлении
#vnfdev_restart = true
#редеплой vnfDev
#опциональный параметр
#тип - булев
#используется при обновлении
#vnfdev_redeploy = true
#список dns
#опциональный параметр
#если при создании указать пустой список, то ресурс создается с полем vnfs.dhcp.config.dns, имеющим значение по умолчанию
#если при обновлении указать пустой список, то ресурс обновит в модели поле vnfs.dhcp.config.dns с текущего значения на пустой список
#тип - список строк
#используется при создании и обновлении
#dns = ["1.1.1.1", "2.2.2.2"]
#идентификатор экземпляра zone
#опциональный параметр
#тип - целое число
#используется при создании и обновлении
#zone_id = 1111
#флаг, указывающий, включены ли группы безопасности для этой сети
#опциональный параметр
#тип - булев
#используется при создании
#значение по умолчанию - false
#enable_secgroups = false
}
output "test" {
value = decort_vins.vins
}

View File

@@ -0,0 +1,64 @@
/*
Пример использования
Работа с vins static routes
Ресурс позволяет:
1. Создавать static routes
2. Удалять static routes
3. Получать информацию о всех static routes в данном Vins
4. Предоставлять доступ виртуальным машинам к static routes
5. Удалять доступ виртуальным машинам к static routes
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_vins_static_route" "sr" {
#id VINS
#обязательный параметр
#тип - целое число
#используется при создании
vins_id = 1111
#destination network
#обязательный параметр
#тип - строка
#используется при создании
destination = "192.168.201.0"
#destination network mask
#обязательный параметр
#тип - строка
#используется при создании
netmask = "255.255.255.255"
#ip-адрес из пула свободных IP-адресов ViNS ID
#обязательный параметр
#тип - строка
#используется при создании
gateway = "192.168.201.40"
}
output "sr" {
value = decort_vins_static_route.sr
}