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,43 @@
/*
Пример использования
Получение информации о ресурсной группе (RG)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_resgroup" "rg" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 1535
#причина для выполнения действия
#необязятельный параметр
#тип - строка
reason = "TEST"
}
output "output" {
value = data.decort_resgroup.rg
}

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_rg_affinity_group_computes" "lc" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#название специальной группы компьютов
#обязательное поле
#тип - строка
affinity_group = "TEST"
}
output "output" {
value = data.decort_rg_affinity_group_computes.lc
}

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_rg_affinity_groups_get" "get_groups" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#название специальной группы компьютов
#обязательное поле
#тип - строка
affinity_group = "TEST"
}
output "output" {
value = data.decort_rg_affinity_groups_get.get_groups
}

View File

@@ -0,0 +1,50 @@
/*
Пример использования
Получение информации о списке специальных групп компьютов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_affinity_groups_list" "list_groups" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output" {
value = data.decort_rg_affinity_groups_list.list_groups
}

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_rg_audits" "rg_audits" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
}
output "output" {
value = data.decort_rg_audits.rg_audits
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение списка текущего потребления ресурсов ресурсной группы
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_resource_consumption_get" "rc_get" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 111
}
output "test" {
value = data.decort_rg_resource_consumption_get.rc_get
}

View File

@@ -0,0 +1,93 @@
/*
Пример использования
Получение информации о списке всех ресурсных групп к которым есть доступ
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_list" "rg_list" {
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени ресурсной группы
#опциональный параметр
#тип - строка
#name = "test"
#id аккаунта для получения списка ресурсных групп
#опциональный параметр
#тип - целое число
#account_id = 11111
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "test"
#фильтр по времени создания (после указанного времени)
#опциональный параметр
#тип - целое число
#created_after = "123"
#фильтр по времени создания (перед указанным временем)
#опциональный параметр
#тип - целое число
#created_before = "123"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по lock status
#опциональный параметр
#тип - строка
#lock_status = "UNLOCKED"
#отображать удаленные ресурсные группы или нет
#необязательный параметр
#тип - булев
#includedeleted = false
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы
#необязательный параметр
#тип - целое число
#page = 1
#размер страницы
#необязательный параметр
#тип - целое число
#size = 2
}
output "output" {
value = data.decort_rg_list.rg_list
}

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_rg_list_computes" "list_computes" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#фильтр по id compute
#опциональный параметр
#тип - целое число
#compute_id = 100
#фильтр по имени compute
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по id аккаунта
#опциональный параметр
#тип - целое число
#account_id = 100
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "STARTED"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по ip address
#опциональный параметр
#тип - строка
#ip_address = "1.1.1.1.1"
#фильтр по имени внешней сети
#опциональный параметр
#тип - строка
#extnet_name = "test"
#фильтр по id внешней сети
#опциональный параметр
#тип - целое число
#extnet_id = 100
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output" {
value = data.decort_rg_list_computes.list_computes
}

View File

@@ -0,0 +1,84 @@
/*
Пример использования
Получение информации о списке удаленных ресурсных групп
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_list_deleted" "list_deleted" {
#фильтр по id ресурсной группы
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени ресурсной группы
#опциональный параметр
#тип - строка
#name = "test"
#id аккаунта для получения списка ресурсных групп
#опциональный параметр
#тип - целое число
#account_id = 11111
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "test"
#фильтр по времени создания (после указанного времени)
#опциональный параметр
#тип - целое число
#created_after = "123"
#фильтр по времени создания (перед указанным временем)
#опциональный параметр
#тип - целое число
#created_before = "123"
#фильтр по lock status
#опциональный параметр
#тип - строка
#lock_status = "UNLOCKED"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы
#необязательный параметр
#тип - целое число
#page = 1
#размер страницы
#необязательный параметр
#тип - целое число
#size = 2
}
output "output" {
value = data.decort_rg_list_deleted.list_deleted
}

View File

@@ -0,0 +1,85 @@
/*
Пример использования
Получение информации о списке балансировщиков в ресурсной группе
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_list_lb" "list_lb" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#фильтр по id балансировщика нагрузки
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени балансировщика нагрузки
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "STOPPED"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по IP front
#опциональный параметр
#тип - строка
#front_ip = "ENABLED"
#фильтр по IP back
#опциональный параметр
#тип - строка
#back_ip = "ENABLED"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output" {
value = data.decort_rg_list_lb.list_lb
}

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_rg_list_pfw" "list_pfw" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
}
output "output" {
value = data.decort_rg_list_pfw.list_pfw
}

View File

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

View File

@@ -0,0 +1,36 @@
/*
Пример использования
Получение списка текущего потребления ресурсов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg_resource_consumption_list" "rc_list" {
#нет входных параметров
}
output "test" {
value = data.decort_rg_resource_consumption_list.rc_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_rg_usage" "rg_usage" {
#id ресурсной группы
#обязательный параметр
#тип - целое число
rg_id = 123
#причина для действия
#необязательный параметр
#тип - строка
reason = "TEST"
}
output "output" {
value = data.decort_rg_usage.rg_usage
}

View File

@@ -0,0 +1,189 @@
/*
Пример использования
Ресурсов RG
Ресурс позволяет:
1. Создавать RG
2. Редактировать RG
3. Удалять RG
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_resgroup" "rg" {
#имя ресурсной группы
#обязательный параметр
#тип - строка
name = "testing_rg_1"
#id аккаунта которому будет принадлежать ресурсная группа
#обязательный параметр
#тип - целое число
account_id = 123
#id сети
#обязательный параметр
#тип - целое число
gid = 1234
#тип сети по умолчанию для этой ресурсной группы
#опциональный параметр
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети
#допустимые значения: PRIVATE, PUBLIC, NONE
#тип - строка
def_net_type = "NONE"
#ip cidr частной сети, если сеть по умолчанию PRIVATE
#опциональный параметр
#тип - строка
ipcidr = "1.1.1.1"
#id внешней сети
#опциональный параметр
#тип - целое число
ext_net_id = 123
#ip внешней сети
#опциональный параметр
#тип - строка
ext_ip = "1.1.1.1"
#причина выполнения
#опциональный параметр
#тип - строка
reason = "TEST"
#описание
#опциональный параметр
#тип - строка
description = "qwerty"
#флаг доступности ресурсной группы
#опциональный параметр
#тип - булев
enable = true
#имя пользователя
#опциональный параметр
#тип - строка
owner = "name_user"
#блок для предоставления прав на ресурсную группу
#опциональный параметр
#тип - блок прав доступа
access {
#имя юзера предоставляемому права
#обязательный праметр при использовании блока
#тип - строка
user = "kasim_baybikov_1@decs3o"
#тип прав
#опциональный параметр
#тип - строка
right = "RCX"
}
#установить сеть по умолчанию
#опциональный параметр
#при добавлении блока, удалять его нельзя
#тип - блок сетей
def_net {
#тип сети
#обязательный параметр при использовании блока
#тип - строка
net_type = "PUBLIC"
#id сети
#опциональный параметр
#идентификатор сегмента сети. Если net_type — PUBLIC, а net_id — 0,
#то будет выбран сегмент внешней сети по умолчанию. Если net_type
#имеет значение PRIVATE и net_id=0, будет выбран первый vins, определенный для этой ресурсной группы
#в противном случае net_id идентифицирует либо существующий сегмент внешней сети, либо vins
#тип - целое число
net_id = 1234
#причина выполнения
#опциональный параметр
#тип - строка
reason = "TEST"
}
#лимиты ресурсов для ресурсной группы
#опциональный параметр
#тип - блок конфигураций
quota {
#максимальное количество ядер процессора
#опциональный параметр
#значение по умолчанию: -1
#тип - целое число
cpu = 5
#максимальный размер памяти в мегабайтах
#опциональный параметр
#значение по умолчанию: -1
#тип - целое число
ram = 1024
#максимальный размер объединенных виртуальных дисков в ГБ
#опциональный параметр
#значение по умолчанию: -1
#тип - целое число
disk = 180
#максимальное количество отправленных/полученных сетевых узлов
#опциональный параметр
#значение по умолчанию: -1
#тип - целое число
ext_traffic = 21
#максимальное количество назначенных общедоступных IP-адресов
#опциональный параметр
#значение по умолчанию: -1
#тип - целое число
ext_ips = 29
}
#флаг для принудительного удаления ресурсной группы
#опциональный параметр
#тип - булев
force = true
#флаг для моментального удаления ресурсной группы
#опциональный параметр
#тип - булев
permanently = true
#восстановление группы после удаления
#опциональный параметр
#используется при редактировании ресурса
#по-умолачанию - false
#тип - булев
restore = true
}
output "output" {
value = decort_resgroup.rg
}