4.6.0
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации об аккаунте
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,9 +29,8 @@ provider "decort" {
|
||||
data "decort_account" "a" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации об использовании аккаунта
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,9 +30,8 @@ provider "decort" {
|
||||
data "decort_account_audits_list" "aal" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка computes, используемых аккаунтом
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,12 +29,12 @@ provider "decort" {
|
||||
data "decort_account_computes_list" "acl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 1111
|
||||
|
||||
#фильтр по id compute
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#compute_id = 100
|
||||
|
||||
#фильтр по имени compute
|
||||
@@ -49,7 +49,7 @@ data "decort_account_computes_list" "acl" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -69,18 +69,24 @@ data "decort_account_computes_list" "acl" {
|
||||
|
||||
#фильтр по id внешней сети
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#extnet_id = 100
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации о расходуемых ресурсах аккаута
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_account_consumed_units" "acu" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 22222
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
1. Создавать образ
|
||||
2. Редактировать образ
|
||||
3. Удалять образ
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -14,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ provider "decort" {
|
||||
data "decort_account_consumed_units_by_type" "acubt" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 33333
|
||||
|
||||
#тип вычислительной единицы
|
||||
@@ -3,6 +3,7 @@
|
||||
Получение информации об удаленных аккаунтах
|
||||
Информация предоставляется только по аккаунтам, удаленным без флага permanently
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +11,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,19 +30,19 @@ provider "decort" {
|
||||
data "decort_account_deleted_list" "adl" {
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
|
||||
#фильтр по id аккаунта
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени аккаунта
|
||||
@@ -53,6 +54,12 @@ data "decort_account_deleted_list" "adl" {
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#acl = "test"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о дисках, которые использует аккаунт
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,12 +29,12 @@ provider "decort" {
|
||||
data "decort_account_disks_list" "adl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
|
||||
#фильтр по id диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#disk_id = 100
|
||||
|
||||
#фильтр по имени диска
|
||||
@@ -44,7 +44,7 @@ data "decort_account_disks_list" "adl" {
|
||||
|
||||
#фильтр по максимальному размеру диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#disk_max_size = 100
|
||||
|
||||
#тип диска
|
||||
@@ -53,14 +53,20 @@ data "decort_account_disks_list" "adl" {
|
||||
#возможные типы: "b" - boot_disk, "d" - data_disk
|
||||
#type = "d"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о flipgroups, используемых аккаунтом
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_account_flipgroups_list" "afgl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 1111
|
||||
|
||||
#фильтр по имени flipgroup
|
||||
@@ -39,7 +39,7 @@ data "decort_account_flipgroups_list" "afgl" {
|
||||
|
||||
#фильтр по id vins
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vins_id = 100
|
||||
|
||||
#фильтр по имени vins
|
||||
@@ -49,7 +49,7 @@ data "decort_account_flipgroups_list" "afgl" {
|
||||
|
||||
#фильтр по id extnet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#extnet_id = 100
|
||||
|
||||
#фильтр по IP
|
||||
@@ -59,17 +59,17 @@ data "decort_account_flipgroups_list" "afgl" {
|
||||
|
||||
#фильтр по id flipgroup
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#flipgroup_id = 100
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
@@ -9,12 +9,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +28,7 @@ provider "decort" {
|
||||
data "decort_account_resource_consumption_get" "rc_get" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 111
|
||||
}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка доступных аккаунтов
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_account_list" "al" {
|
||||
#фильтр по id аккаунта
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени аккаунта
|
||||
@@ -47,15 +47,21 @@ data "decort_account_list" "al" {
|
||||
#тип - строка
|
||||
#status = "ENABLED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информии о зарезервированных вычислительных мощностях
|
||||
|
||||
Получение информации о зарезервированных вычислительных мощностях
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_account_reserved_units" "aru" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
}
|
||||
|
||||
@@ -9,12 +9,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации о ресурных группах, используемых аккаунтом
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,24 +29,24 @@ provider "decort" {
|
||||
data "decort_account_rg_list" "argl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 66666
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 11111
|
||||
|
||||
#фильтр по имени ресурсной группы
|
||||
@@ -55,18 +56,24 @@ data "decort_account_rg_list" "argl" {
|
||||
|
||||
#фильтр по id vins
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vins_id = 100
|
||||
|
||||
#фильтр по id compute
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vm_id = 100
|
||||
|
||||
#фильтр по статусу
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#status = "CREATED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -1,21 +1,21 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о шаблонах, используемых аккаунтом
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -29,17 +29,17 @@ provider "decort" {
|
||||
data "decort_account_templates_list" "atl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
|
||||
#фильтр "включая удаленные шаблоны"
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#include_deleted = true
|
||||
|
||||
#фильтр по id образа
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#image_id = 1111
|
||||
|
||||
#фильтр по имени
|
||||
@@ -52,15 +52,21 @@ data "decort_account_templates_list" "atl" {
|
||||
#тип - строка
|
||||
#type = "linux"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка vins, используемых аккаунтом
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,12 +29,12 @@ provider "decort" {
|
||||
data "decort_account_vins_list" "avl" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 22222
|
||||
|
||||
#фильтр по id vins
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vins_id = 100
|
||||
|
||||
#фильтр по имени vins
|
||||
@@ -44,7 +44,7 @@ data "decort_account_vins_list" "avl" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 11111
|
||||
|
||||
#фильтр по IP внешней сети
|
||||
@@ -52,15 +52,21 @@ data "decort_account_vins_list" "avl" {
|
||||
#тип - строка
|
||||
#ext_ip = "test"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -5,8 +5,8 @@
|
||||
1. Создавать аккаунт
|
||||
2. Редактировать аккаунт
|
||||
3. Удалять аккаунт
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -14,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -44,20 +44,20 @@ resource "decort_account" "a" {
|
||||
|
||||
#доступность аккаунта
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#может применяться при редактировании аккаунта
|
||||
enable = true
|
||||
#enable = true
|
||||
|
||||
#id аккаунта, позволяет сформировать .tfstate, если аккаунт имеет в платформе
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 11111
|
||||
|
||||
#отправлять ли на электронную почту письмо о доступе
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#применяется при создании аккаунта и редактировании аккаунта
|
||||
send_access_emails = true
|
||||
#send_access_emails = true
|
||||
|
||||
#добавление/редактирование/удаление пользователей, к которым привязан аккаунт
|
||||
#необязательный параметр
|
||||
@@ -79,7 +79,7 @@ resource "decort_account" "a" {
|
||||
|
||||
#рекурсивное удаление пользователя из всех ресурсов аккаунтов
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#по-умолчанию - false
|
||||
#применяется при удалении пользователя из аккаунта
|
||||
recursive_delete = true
|
||||
@@ -96,51 +96,51 @@ resource "decort_account" "a" {
|
||||
resource_limits {
|
||||
#кол-во используемых ядер cpu
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - кол-во неограиченно
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
cu_c = 2
|
||||
|
||||
#кол-во используемой RAM в МБ
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - кол-во неограиченно
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
cu_m = 1024
|
||||
|
||||
#размер дисков, в ГБ
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - размер неограичен
|
||||
#тип - целое число
|
||||
#если установлена -1 - размер неограничено
|
||||
cu_d = 23
|
||||
|
||||
#кол-во используемых публичных IP
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - кол-во неограиченно
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
cu_i = 2
|
||||
|
||||
#ограничения на кол-во передачи данных, в ГБ
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - кол-во неограиченно
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
cu_np = 2
|
||||
|
||||
#кол-во графических процессоров
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#если установлена -1 - кол-во неограиченно
|
||||
#тип - целое число
|
||||
#если установлена -1 - кол-во неограничено
|
||||
gpu_units = 2
|
||||
}
|
||||
|
||||
#восстановление аккаунта
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#применяется к удаленным аккаунтам
|
||||
#по-умолчанию - false
|
||||
#restore = false
|
||||
|
||||
#мгновеное удаление аккаунта, если да - то аккаунт невозможно будет восстановить
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при удалении аккаунта
|
||||
#по-умолчанию - false
|
||||
#permanently = true
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о basic service
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,9 +29,8 @@ provider "decort" {
|
||||
data "decort_bservice" "b" {
|
||||
#id сервиса
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
service_id = 11111
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка удаленных basic service
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,25 +29,31 @@ provider "decort" {
|
||||
data "decort_bservice_deleted_list" "bsdl" {
|
||||
#id аккаунта для фильтрации данных
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#account_id = 11111
|
||||
|
||||
#id ресурсной группы, используется для фильтрации
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#rg_id = 11111
|
||||
#rg_id = 11111
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о вычислительной группе, принадлежащей basic service
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,12 +29,12 @@ provider "decort" {
|
||||
data "decort_bservice_group" "bsg" {
|
||||
#id сервиса
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
service_id = 11111
|
||||
|
||||
#id вычислительной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compgroup_id = 12121
|
||||
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка доступных базовых сервисов
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_bservice_list" "bsl" {
|
||||
#фильтр по id базового сервиса
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени базового сервиса
|
||||
@@ -39,7 +39,7 @@ data "decort_bservice_list" "bsl" {
|
||||
|
||||
#id аккаунта для фильтрации данных
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#account_id = 11111
|
||||
|
||||
@@ -50,7 +50,7 @@ data "decort_bservice_list" "bsl" {
|
||||
|
||||
#id ресурсной группы, используется для фильтрации
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#rg_id = 11111
|
||||
|
||||
@@ -69,15 +69,21 @@ data "decort_bservice_list" "bsl" {
|
||||
#тип - строка
|
||||
#account_name = "test"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка снимков состояний basic service
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,7 +30,7 @@ provider "decort" {
|
||||
data "decort_bservice_snapshot_list" "bsl" {
|
||||
#id basic service
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
service_id = 11111
|
||||
}
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
4. Создавать снимки состояний basic service
|
||||
5. Совершать восстановление по снимкам состояний
|
||||
6. Удалять снимки состояний
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -17,8 +17,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -41,12 +41,12 @@ resource "decort_bservice" "b" {
|
||||
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
rg_id = 11111
|
||||
|
||||
#доступность сервиса
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании ресурса
|
||||
#по-умолачанию - false
|
||||
#enable = true
|
||||
@@ -65,7 +65,7 @@ resource "decort_bservice" "b" {
|
||||
|
||||
#восстановление сервиса из снимка состояния
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#по-умолчанию - false
|
||||
#восстановление происходит только при переключении с false на true
|
||||
rollback = false
|
||||
@@ -74,32 +74,31 @@ resource "decort_bservice" "b" {
|
||||
|
||||
#старт сервиса
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании ресурса
|
||||
#по-умолачанию - false
|
||||
#start = false
|
||||
|
||||
#восстановление сервиса после удаления
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании ресурса
|
||||
#по-умолачанию - false
|
||||
#restore = true
|
||||
|
||||
#мгновенное удаление сервиса без права восстановления
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при удалении ресурса
|
||||
#по-умолачанию - false
|
||||
#permanently = true
|
||||
|
||||
#id сервиса, позволяет сформировать .tfstate, если сервис есть в платформе
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при создании ресурса
|
||||
#service_id = 11111
|
||||
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -6,6 +6,7 @@
|
||||
2. Редактировать группы
|
||||
3. Удалять группы
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -13,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -32,7 +33,7 @@ provider "decort" {
|
||||
resource "decort_bservice_group" "bsg" {
|
||||
#id basic service
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
service_id = 444444
|
||||
|
||||
#название группы
|
||||
@@ -42,37 +43,37 @@ resource "decort_bservice_group" "bsg" {
|
||||
|
||||
#id группы
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#применяется при редактировании группы, либо при создании .tfstate - файла, если группа имеется в плафторме
|
||||
compgroup_id = 33333
|
||||
|
||||
#кол-во вычислительных ресурсов
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#используется так же для редактирования группы
|
||||
comp_count = 1
|
||||
|
||||
#кол-во ядер на выч. ресурс
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#используется так же для редактирования группы
|
||||
cpu = 2
|
||||
|
||||
#кол-во оперативной памяти на выч. ресурс, в МБ
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#используется так же для редактирования группы
|
||||
ram = 256
|
||||
|
||||
#размер диска для выч. ресурса, в ГБ
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#используется так же для редактирования группы
|
||||
disk = 11
|
||||
|
||||
#id образа диска
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
image_id = 2222
|
||||
|
||||
#драйвер
|
||||
@@ -82,7 +83,7 @@ resource "decort_bservice_group" "bsg" {
|
||||
|
||||
#id Storage endpoint provider
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
sep_id = 3
|
||||
|
||||
#Наименование SEPPool используется если установлен sepId, также может быть пустым
|
||||
@@ -98,57 +99,57 @@ resource "decort_bservice_group" "bsg" {
|
||||
|
||||
#id сетей extnet
|
||||
#необязательный параметр
|
||||
#тип - массив чисел
|
||||
#тип - массив целых чисел
|
||||
#должен быть использован vins или extnets
|
||||
extnets = [1111, 2222]
|
||||
|
||||
#id сетей vinses
|
||||
#необязательный параметр
|
||||
#тип - массив чисел
|
||||
#тип - массив целых чисел
|
||||
#должен быть использован vins или extnets
|
||||
vinses = [1111, 2222]
|
||||
|
||||
#время таймуата перед стартом
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#используется при создании ресурса
|
||||
timeout_start = 0
|
||||
|
||||
#Перечень аргументов для cloud-init создаваемым группам узлов Worker
|
||||
#необязательный параметр
|
||||
#тип - файл
|
||||
#тип - файл в формате YAML
|
||||
cloud_init = file("initconfig.tftpl")
|
||||
|
||||
#id групп родителей
|
||||
#необязательный параметр
|
||||
#тип - массив чисел
|
||||
#тип - массив целых чисел
|
||||
#используется при редактировании ресурса
|
||||
#parents = []
|
||||
#parents = [2222]
|
||||
|
||||
#принудительное обновление параметров выч. мощностей (ram,disk,cpu) и имени группы
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании ресурса
|
||||
#по-умолчанию - false
|
||||
#force_update = true
|
||||
|
||||
#старт/стоп вычислительных мощностей
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании ресурса
|
||||
#по-умолчанию - false
|
||||
#start = false
|
||||
|
||||
#принудительная остановка вычислительных мощностей
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#используется при редактировании и остановке группы
|
||||
#по-умолчанию - false
|
||||
#force_stop = false
|
||||
|
||||
#удаление вычислительных мощностей
|
||||
#необязательный параметр
|
||||
#тип - массив чисел
|
||||
#тип - массив целых чисел
|
||||
#используется при редактировании
|
||||
#remove_computes = [32287]
|
||||
|
||||
@@ -1,32 +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_k8s_computes" "computes" {
|
||||
# ID кластера
|
||||
# Обязательный параметр
|
||||
k8s_id = 999
|
||||
}
|
||||
|
||||
output "computes_out" {
|
||||
value = data.decort_k8s_computes.computes
|
||||
}
|
||||
@@ -1,68 +0,0 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о списке винсов в ресурсной группе
|
||||
*/
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/* terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
}
|
||||
}
|
||||
} */
|
||||
|
||||
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"
|
||||
|
||||
# номер страницы для отображения
|
||||
# опциональный параметр
|
||||
# тип - число
|
||||
# если не задан - выводятся все доступные данные
|
||||
# page = 2
|
||||
|
||||
# размер страницы
|
||||
# опциональный параметр
|
||||
# тип - число
|
||||
# если не задан - выводятся все доступные данные
|
||||
# size = 3
|
||||
}
|
||||
|
||||
output "output" {
|
||||
value = data.decort_rg_list_vins.list_vins
|
||||
}
|
||||
@@ -1,45 +0,0 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурса 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 = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,20 +1,21 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка доступных образов
|
||||
Получение данных диска
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -26,8 +27,10 @@ provider "decort" {
|
||||
}
|
||||
|
||||
data "decort_disk" "acl" {
|
||||
#фильтр по id диска
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
disk_id = 49304
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка доступных дисков
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_disk_list" "dl" {
|
||||
#фильтр по id диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени диска
|
||||
@@ -44,7 +44,7 @@ data "decort_disk_list" "dl" {
|
||||
|
||||
#фильтр по максимальному размеру диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#disk_max_size = 100
|
||||
|
||||
#фильтр по статусу
|
||||
@@ -54,23 +54,23 @@ data "decort_disk_list" "dl" {
|
||||
|
||||
#фильтр по доступности иным пользователям
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#shared = "false"
|
||||
|
||||
#id аккаунта для получения списка дисков
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#тип диска
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#возможные типы: "b" - boot_disk, "d" - data_disk
|
||||
#type = "d"
|
||||
#возможные типы: "B" - boot_disk, "D" - data_disk
|
||||
#type = "D"
|
||||
|
||||
#id SEP для получения списка дисков
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#sep_id = 11111
|
||||
|
||||
#фильтр по имени pool
|
||||
@@ -78,14 +78,20 @@ data "decort_disk_list" "dl" {
|
||||
#тип - строка
|
||||
#pool_name = "test"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка дисков со статусом DELETED
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +30,7 @@ provider "decort" {
|
||||
data "decort_disk_list_deleted" "dld" {
|
||||
#фильтр по id диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени диска
|
||||
@@ -44,17 +45,17 @@ data "decort_disk_list_deleted" "dld" {
|
||||
|
||||
#фильтр по максимальному размеру диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#disk_max_size = 100
|
||||
|
||||
#фильтр по доступности иным пользователям
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#shared = "false"
|
||||
|
||||
#id аккаунта для получения списка дисков
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#тип диска
|
||||
@@ -63,14 +64,20 @@ data "decort_disk_list_deleted" "dld" {
|
||||
#возможные типы: "b" - boot_disk, "d" - data_disk
|
||||
#type = "d"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка типов дисков
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,15 +27,21 @@ provider "decort" {
|
||||
}
|
||||
|
||||
data "decort_disk_list_types" "dlt" {
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка типов дисков, но детально
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -28,15 +28,21 @@ provider "decort" {
|
||||
|
||||
|
||||
data "decort_disk_list_types_detailed" "dltd" {
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка доступных неприсоединенных дисков
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,7 +31,7 @@ provider "decort" {
|
||||
data "decort_disk_list_unattached" "dlu" {
|
||||
#фильтр по id диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени аккаунта
|
||||
@@ -40,7 +41,7 @@ data "decort_disk_list_unattached" "dlu" {
|
||||
|
||||
#фильтр по максимальному размеру диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#disk_max_size = 100
|
||||
|
||||
#фильтр по статусу
|
||||
@@ -56,12 +57,12 @@ data "decort_disk_list_unattached" "dlu" {
|
||||
|
||||
#фильтр по id аккаунта
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 100
|
||||
|
||||
#фильтр по id sep
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#sep_id = 1
|
||||
|
||||
#фильтр по имени pool
|
||||
@@ -69,15 +70,21 @@ data "decort_disk_list_unattached" "dlu" {
|
||||
#тип - строка
|
||||
#pool_name = "test"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
45
samples/cloudapi/disk/data_disk_replication/main.tf
Normal file
45
samples/cloudapi/disk/data_disk_replication/main.tf
Normal file
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение статуса репликации диска
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_replication" "dr" {
|
||||
#ID диска для которого подключена репликация
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
disk_id = 49304
|
||||
|
||||
#ID реплики диска
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
replica_disk_id = 1213
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = data.decort_disk_replication.dr
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение конкретного снапшота
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -16,7 +17,6 @@ terraform {
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -26,11 +26,10 @@ provider "decort" {
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
|
||||
data "decort_disk_snapshot" "ds" {
|
||||
#Номер диска
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk_id = 20100
|
||||
|
||||
#Ярлык диска
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка снапшотов диска
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -26,11 +26,10 @@ provider "decort" {
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
|
||||
data "decort_disk_snapshot_list" "ds" {
|
||||
#Номер диска
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk_id = 20100
|
||||
}
|
||||
|
||||
74
samples/cloudapi/disk/resource_disk/main.tf
Normal file
74
samples/cloudapi/disk/resource_disk/main.tf
Normal file
@@ -0,0 +1,74 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации об уже существующем диске.
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_disk" "acl" {
|
||||
#id владельца диска
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
account_id = 88366
|
||||
|
||||
#имя диска
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
disk_name = "super-disk-re"
|
||||
|
||||
#размер диска в гигабайтах
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
size_max = 20
|
||||
|
||||
#id платформы
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
gid = 212
|
||||
|
||||
#флаг для отключения диска от ВМ при удалении
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
detach = false
|
||||
|
||||
#флаг для удаления реплики диска безвозвратно
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = false
|
||||
|
||||
#описание причины удаления
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
reason = "some"
|
||||
|
||||
#Флаг, отвечающий за доступность диска дургим ресурсам
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
shareable = false
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_disk.acl
|
||||
}
|
||||
84
samples/cloudapi/disk/resource_disk_replication/main.tf
Normal file
84
samples/cloudapi/disk/resource_disk_replication/main.tf
Normal 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
|
||||
}
|
||||
|
||||
resource "decort_disk_replication" "dr" {
|
||||
#id диска из которого будет создана реплика
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
disk_id = 20100
|
||||
|
||||
#имя реплики диска
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
disk_name = "test"
|
||||
|
||||
#sep id
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
sep_id = 1
|
||||
|
||||
#название pool
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
pool_name = "some"
|
||||
|
||||
#флаг паузы
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#pause = false
|
||||
|
||||
#флаг для изменения ролей дисков
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#reverse = false
|
||||
|
||||
#флаг для запуска связи между диском и репликой
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#start = false
|
||||
|
||||
#флаг для отключения диска от ВМ при удалении
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#detach = false
|
||||
|
||||
#флаг для удаления реплики диска безвозвратно
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#permanently = false
|
||||
|
||||
#описание причины удаления
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#reason = "some"
|
||||
}
|
||||
|
||||
|
||||
output "test" {
|
||||
value = decort_disk_replication.dr
|
||||
}
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Ресурс снапшота диска
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -26,19 +27,19 @@ provider "decort" {
|
||||
}
|
||||
|
||||
resource "decort_disk_snapshot" "ds" {
|
||||
#Номер диска
|
||||
#номер диска
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk_id = 20100
|
||||
|
||||
#Ярлык диска
|
||||
#ярлык диска
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
label = "label"
|
||||
|
||||
#флаг rollback
|
||||
#опциональный параметр
|
||||
#тип - bool
|
||||
#тип - булев
|
||||
rollback = false
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации о сети
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_extnet" "e" {
|
||||
#идентификатор сети
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
net_id = 1111
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации о вычислительных ресурсах, использующих сеть аккаунта
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,30 +29,34 @@ provider "decort" {
|
||||
data "decort_extnet_computes_list" "ecl" {
|
||||
#идентификатор аккаунта
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
account_id = 1111
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 11111
|
||||
|
||||
#фильтр по id виртуальной машины
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#compute_id = 11111
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о сети по-умолчанию
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,14 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка сетей
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,12 +29,12 @@ provider "decort" {
|
||||
data "decort_extnet_list" "el" {
|
||||
#id аккаунта для фильтрации результата
|
||||
#необязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 1111111
|
||||
|
||||
#фильтр по id внешней сети
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени внешней сети
|
||||
@@ -49,12 +49,12 @@ data "decort_extnet_list" "el" {
|
||||
|
||||
#фильтр по id vlan
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vlan_id = 100
|
||||
|
||||
#фильтр по id vnfDevices
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vnfdev_id = 100
|
||||
|
||||
#фильтр по статусу
|
||||
@@ -62,14 +62,20 @@ data "decort_extnet_list" "el" {
|
||||
#тип - строка
|
||||
#status = "ENABLED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение группы виртуальных машин по id
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -22,9 +27,9 @@ provider "decort" {
|
||||
}
|
||||
|
||||
data "decort_flipgroup" "fg" {
|
||||
# ID флипгруппы
|
||||
# Обязательный параметр
|
||||
# int
|
||||
#id флипгруппы
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
flipgroup_id = 999
|
||||
}
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение группы виртуальных машин, доступных текущему пользователю
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -24,7 +29,7 @@ provider "decort" {
|
||||
data "decort_flipgroup_list" "fg" {
|
||||
#фильтр по id flipgroup
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени flipgroup
|
||||
@@ -34,7 +39,7 @@ data "decort_flipgroup_list" "fg" {
|
||||
|
||||
#фильтр по id vins
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#vins_id = 100
|
||||
|
||||
#фильтр по имени vins
|
||||
@@ -44,7 +49,7 @@ data "decort_flipgroup_list" "fg" {
|
||||
|
||||
#фильтр по id extnet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#extnet_id = 100
|
||||
|
||||
#фильтр по IP
|
||||
@@ -54,21 +59,47 @@ data "decort_flipgroup_list" "fg" {
|
||||
|
||||
#id ресурсной группы, используется для фильтрации
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#rg_id = 11111
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
|
||||
#фильтр по id аккаунта
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#account_id = 100
|
||||
|
||||
#фильтр по id conn
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#conn_id = 100
|
||||
|
||||
#фильтр по id клиентов
|
||||
#опциональный параметр
|
||||
#тип - массив целых чисел
|
||||
#client_ids = [10,11]
|
||||
|
||||
#фильтр по статусу
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#status = "CREATED"
|
||||
}
|
||||
|
||||
output "fg_out" {
|
||||
76
samples/cloudapi/flipgroup/resource_flipgroup/main.tf
Normal file
76
samples/cloudapi/flipgroup/resource_flipgroup/main.tf
Normal file
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
Управления плавающими группами (флипгруппами).
|
||||
Ресурс позволяет:
|
||||
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_flipgroup" "fg" {
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
account_id = 999
|
||||
|
||||
#наименование Flipgroup
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "flipgroup_name"
|
||||
|
||||
#тип сети (EXTNET, ViNS)
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
net_type = "EXTNET"
|
||||
|
||||
#id сети
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
net_id = 13
|
||||
|
||||
#тип клиентов (в данный момент поддерживается только тип 'compute')
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
client_type = "compute"
|
||||
|
||||
#ip-адрес
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ip = "127.0.0.1"
|
||||
|
||||
#список клиентов, прикрепленных к флипгруппе
|
||||
#опциональный параметр
|
||||
#тип - массив целых чисел
|
||||
client_ids = [11269]
|
||||
|
||||
#описание флипгруппы
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = "CHANGED"
|
||||
}
|
||||
|
||||
output "fg_out" {
|
||||
value = decort_flipgroup.fg
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации об образе
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,10 +29,10 @@ provider "decort" {
|
||||
data "decort_image" "image" {
|
||||
#id образа
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
image_id = 111
|
||||
|
||||
#позывать ли информацию об удаленном образе
|
||||
#показывать ли информацию об удаленном образе
|
||||
#опциональный параметр
|
||||
#тип - булево значение
|
||||
#по умолчанию - false
|
||||
@@ -2,18 +2,20 @@
|
||||
Пример использования
|
||||
Получение списка доступных образов
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
provider "decort" {
|
||||
@@ -28,12 +30,12 @@ provider "decort" {
|
||||
data "decort_image_list" "il" {
|
||||
#фильтр по id sep
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#sep_id = 1
|
||||
|
||||
#фильтр по id образа
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени образа
|
||||
@@ -58,7 +60,7 @@ data "decort_image_list" "il" {
|
||||
|
||||
#фильтр по размеру образа
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#image_size = 100
|
||||
|
||||
#фильтр по имени SEP
|
||||
@@ -86,15 +88,21 @@ data "decort_image_list" "il" {
|
||||
#тип - булевый тип
|
||||
#bootable = "true"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 2
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 3
|
||||
}
|
||||
115
samples/cloudapi/image/resource_image/main.tf
Normal file
115
samples/cloudapi/image/resource_image/main.tf
Normal file
@@ -0,0 +1,115 @@
|
||||
/*
|
||||
Пример использования
|
||||
Работа с образом
|
||||
Ресурс позволяет:
|
||||
1. Управлять образом
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_image" "img" {
|
||||
#наименование образа
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "image_name"
|
||||
|
||||
#драйверы компьютов, подходящие для данного образа
|
||||
#обязательный параметр
|
||||
#тип - массив строк
|
||||
drivers = ["KVM_X86"]
|
||||
|
||||
#тип образа (linux, windows и др.)
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
type = "linux"
|
||||
|
||||
#прямая ссылка на образ
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
url = "https://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-virt-3.17.3-x86_64.iso"
|
||||
|
||||
#тип загрузчика (bios/uefi)
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
boot_type = "bios"
|
||||
|
||||
#id аккаунта
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
account_id = 138
|
||||
|
||||
#поддержка hot resize
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
hot_resize = true
|
||||
|
||||
#юзернейм для образа
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
username = "userx"
|
||||
|
||||
#пароль для образа
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
password = "passx"
|
||||
|
||||
#юзернейм для загрузки binary media
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
username_dl = "userxdl"
|
||||
|
||||
#пароль для загрузки binary media
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
password_dl = "passxdl"
|
||||
|
||||
#storage endpoint provider ID
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
sep_id = 1
|
||||
|
||||
#pool для образа
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
pool_name = "pool"
|
||||
|
||||
#архитектура образа (X86_64 / PPC64_LE)
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
architecture = "PPC64_LE"
|
||||
|
||||
#флаг окончательного удаления
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = true
|
||||
|
||||
#наименование сетевого интерфейса для вашего компьютера с Linux, eth - встроенный, ens - pci слот
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
network_interface_naming = "ens"
|
||||
}
|
||||
|
||||
output "img_out" {
|
||||
value = decort_image.img
|
||||
}
|
||||
107
samples/cloudapi/image/resource_image_from_blank_compute/main.tf
Normal file
107
samples/cloudapi/image/resource_image_from_blank_compute/main.tf
Normal file
@@ -0,0 +1,107 @@
|
||||
/*
|
||||
Ресурс образа из компьюта, созданного как blank позволяет:
|
||||
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_image_from_blank_compute" "img" {
|
||||
#id виртуальной машины, созданной как blank
|
||||
#обязательный параметр
|
||||
#используется для создания образа
|
||||
#тип - целое число
|
||||
compute_id = 1234
|
||||
|
||||
#наименование образа
|
||||
#обязательный параметр
|
||||
#используется для создания и обновления образа
|
||||
#тип - строка
|
||||
name = "image_name"
|
||||
|
||||
#тип загрузчика (bios/uefi)
|
||||
#обязательный параметр
|
||||
#используется для создания образа
|
||||
#тип - строка
|
||||
boot_type = "bios"
|
||||
|
||||
#тип образа (linux, windows и др.)
|
||||
#обязательный параметр
|
||||
#используется для создания образа
|
||||
#тип - строка
|
||||
type = "linux"
|
||||
|
||||
#юзернейм для образа
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - строка
|
||||
#username = "userx"
|
||||
|
||||
#пароль для образа
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - строка
|
||||
#password = "passx"
|
||||
|
||||
#id аккаунта
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - целое число
|
||||
#account_id = 138
|
||||
|
||||
#storage endpoint provider ID
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - целое число
|
||||
#sep_id = 1
|
||||
|
||||
#pool для образа
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - строка
|
||||
#pool_name = "pool"
|
||||
|
||||
#поддержка hot resize
|
||||
#опциональный параметр
|
||||
#используется для создания образа
|
||||
#тип - булев
|
||||
#hot_resize = true
|
||||
|
||||
#флаг для создания образа в асинхронном режиме
|
||||
#опциональный параметр
|
||||
#дефолтное значение - false
|
||||
#тип - булев
|
||||
#async_mode = true
|
||||
|
||||
#флаг окончательного удаления
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#permanently = true
|
||||
|
||||
}
|
||||
|
||||
output "img_out" {
|
||||
value = decort_image_from_blank_compute.img
|
||||
}
|
||||
127
samples/cloudapi/image/resource_image_from_platform_disk/main.tf
Normal file
127
samples/cloudapi/image/resource_image_from_platform_disk/main.tf
Normal file
@@ -0,0 +1,127 @@
|
||||
/*
|
||||
Ресурс образа из платформенного диска позволяет:
|
||||
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_image_from_platform_disk" "img" {
|
||||
#id диска
|
||||
#используется для создания образа
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
disk_id = 1234
|
||||
|
||||
#наименование образа
|
||||
#используется для создания и обновления образа
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "image_name"
|
||||
|
||||
#тип загрузчика
|
||||
#используется для создания образа
|
||||
#обязательный параметр
|
||||
#возможные значения - bios, uefi
|
||||
#тип - строка
|
||||
boot_type = "bios"
|
||||
|
||||
#тип образа (linux, windows и др.)
|
||||
#используется для создания образа
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
type = "linux"
|
||||
|
||||
#архитектура образа
|
||||
#используется для создания образа
|
||||
#обязательный параметр
|
||||
#возможные значения - X86_64, PPC64_LE
|
||||
#тип - строка
|
||||
architecture = "X86_64"
|
||||
|
||||
#имя пользователя для образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#username = "userx"
|
||||
|
||||
#пароль для образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#password = "passx"
|
||||
|
||||
#id аккаунта
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#account_id = 138
|
||||
|
||||
#id сепа для образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#sep_id = 1
|
||||
|
||||
#pool для образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#pool_name = "pool"
|
||||
|
||||
#драйверы компьютов, подходящие для данного образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - массив строк
|
||||
#drivers = ["KVM_X86"]
|
||||
|
||||
#поддержка hot resize
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#hot_resize = true
|
||||
|
||||
#флаг загрузочного образа
|
||||
#используется для создания образа
|
||||
#опциональный параметр
|
||||
#по умолчанию - true
|
||||
#тип - булев
|
||||
#bootable = true
|
||||
|
||||
#флаг для создания образа в асинхронном режиме
|
||||
#опциональный параметр
|
||||
#по умолчанию - false
|
||||
#тип - булев
|
||||
#async_mode = true
|
||||
|
||||
#флаг окончательного удаления
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#permanently = true
|
||||
}
|
||||
|
||||
output "img_out" {
|
||||
value = decort_image_from_platform_disk.img
|
||||
}
|
||||
@@ -1,11 +1,10 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурса image virtual
|
||||
Управления виртуальным образом
|
||||
Ресурс позволяет:
|
||||
1. Создавать image virtual
|
||||
2. Изменять image virtual
|
||||
2. Удалять image virtual
|
||||
3. Переименовывать image virtual
|
||||
4. Привязывать image virtual к другому образу
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
@@ -15,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -41,12 +40,12 @@ resource "decort_image_virtual" "iv" {
|
||||
#ID реального образа, на который будет ссылаться виртуальный
|
||||
#обязательный параметр
|
||||
#при изменении - ссылается на другой реальный образ
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
link_to = 123
|
||||
|
||||
#Флаг для удаления диска
|
||||
#опциональный параметр
|
||||
#тип - bool
|
||||
#тип - булев
|
||||
permanently = false
|
||||
}
|
||||
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о k8ci
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -26,49 +27,55 @@ provider "decort" {
|
||||
}
|
||||
|
||||
data "decort_k8ci_list" "k8ci_list" {
|
||||
#Поиск по ID
|
||||
#поиск по ID
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
by_id = 12
|
||||
|
||||
#Поиск по наименованию
|
||||
#поиск по наименованию
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
name = "name"
|
||||
|
||||
#Поиск по статус
|
||||
#поиск по статус
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
status = "status"
|
||||
|
||||
#Поиск по worker драйверу
|
||||
#поиск по worker драйверу
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
worker_driver = "wdriver"
|
||||
|
||||
#Поиск по master драйверу
|
||||
#поиск по master драйверу
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
master_driver = "wdriver"
|
||||
|
||||
#Поиск по network плагину
|
||||
#поиск по network плагину
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
network_plugin = "flannel"
|
||||
|
||||
#Показать выключенные K8CI
|
||||
#показать выключенные K8CI
|
||||
#опциональный параметр
|
||||
#тип - bool
|
||||
#тип - булев
|
||||
include_disabled = true
|
||||
|
||||
#Номер страницы
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
sort_by = "+name"
|
||||
|
||||
#номер страницы
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
page = 1
|
||||
|
||||
#Размер страницы
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
size = 5
|
||||
}
|
||||
|
||||
@@ -2,10 +2,11 @@
|
||||
Пример использования
|
||||
Получение информации о k8s кластере
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
@@ -14,7 +15,7 @@ terraform {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_k8s" "k8s" {
|
||||
#id кластера
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8s_id = 49304
|
||||
}
|
||||
|
||||
38
samples/cloudapi/k8s/data_k8s_computes/main.tf
Normal file
38
samples/cloudapi/k8s/data_k8s_computes/main.tf
Normal 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_k8s_computes" "computes" {
|
||||
#id кластера
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
k8s_id = 999
|
||||
}
|
||||
|
||||
output "computes_out" {
|
||||
value = data.decort_k8s_computes.computes
|
||||
}
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение списка доступных кластеров
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_k8s_list" "k8s_list" {
|
||||
#фильтр по id кластера
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени кластера
|
||||
@@ -43,17 +44,17 @@ data "decort_k8s_list" "k8s_list" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по id балансировщика нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#lb_id = 100
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#bservice_id = 100
|
||||
|
||||
#фильтр по статусу
|
||||
@@ -68,21 +69,27 @@ data "decort_k8s_list" "k8s_list" {
|
||||
|
||||
#включение удаленных k8s в результат
|
||||
#опциональный параметр
|
||||
#тип - будев тип
|
||||
#тип - булев
|
||||
#если не задан - выводятся все неудаленные данные
|
||||
# includedeleted = true
|
||||
#includedeleted = true
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
# page = 1
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
# size = 1
|
||||
#size = 1
|
||||
}
|
||||
|
||||
output "output_k8s_list" {
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение списка удаленных кластеров
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_k8s_list_deleted" "k8s_list_deleted" {
|
||||
#фильтр по id кластера
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени кластера
|
||||
@@ -43,17 +44,17 @@ data "decort_k8s_list_deleted" "k8s_list_deleted" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по id балансировщика нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#lb_id = 100
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#bservice_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -61,15 +62,21 @@ data "decort_k8s_list_deleted" "k8s_list_deleted" {
|
||||
#тип - строка
|
||||
#tech_status = "STOPPED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -77,4 +84,3 @@ data "decort_k8s_list_deleted" "k8s_list_deleted" {
|
||||
output "output_k8s_list_deleted" {
|
||||
value = data.decort_k8s_list_deleted.k8s_list_deleted
|
||||
}
|
||||
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о k8s кластере
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,12 +29,12 @@ provider "decort" {
|
||||
data "decort_k8s_wg" "k8s_wg" {
|
||||
#id кластера
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8s_id = 49304
|
||||
|
||||
#id группы воркеров
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
wg_id = 43329
|
||||
}
|
||||
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о мета данных рабочей группы k8s кластера
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,18 +29,15 @@ provider "decort" {
|
||||
data "decort_k8s_wg_cloud_init" "wg_cloud_init" {
|
||||
#id кластера
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8s_id = 977
|
||||
|
||||
#id группы воркеров
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
wg_id = 2110
|
||||
}
|
||||
|
||||
output "wg_cloud_init" {
|
||||
value = data.decort_k8s_wg_cloud_init.wg_cloud_init
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение списка доступных групп воркеров в кластере
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_k8s_wg_list" "k8s_wg_list" {
|
||||
#id кластера
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8s_id = 49304
|
||||
}
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
/*
|
||||
Пример использования
|
||||
Управление кластером
|
||||
Ресурс позволяет:
|
||||
1. Создавать кластер
|
||||
2. Управлять кластером
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -18,26 +26,24 @@ provider "decort" {
|
||||
controller_url = "https://ds1.digitalenergy.online"
|
||||
#oauth2_url = <DECORT_SSO_URL>
|
||||
oauth2_url = "https://sso.digitalenergy.online"
|
||||
#app_id = <APP-ID>
|
||||
#app_secret = <APP-SECRET>
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
resource "decort_k8s" "cluster" {
|
||||
#имя кластера
|
||||
#обязательный параметр
|
||||
#при изменении - обновдяет имя кластера
|
||||
#при изменении - обновляет имя кластера
|
||||
#тип - строка
|
||||
name = "tftest"
|
||||
|
||||
#id resource group
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
rg_id = 907
|
||||
#тип - целое число
|
||||
rg_id = 776
|
||||
|
||||
#id catalogue item
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8sci_id = 9
|
||||
|
||||
#сетевой плагин
|
||||
@@ -72,41 +78,41 @@ resource "decort_k8s" "cluster" {
|
||||
#максимальное кол-во элементов - 1
|
||||
#тип - список нод
|
||||
masters {
|
||||
#кол-во node
|
||||
#кол-во node (1, 3 или 5)
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
num = 1
|
||||
|
||||
#кол-во cpu
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
cpu = 2
|
||||
|
||||
#кол-во RAM в Мбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
ram = 2048
|
||||
|
||||
#размер диска в Гбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk = 10
|
||||
|
||||
#идентификатор SEP для создания загрузочных дисков для master узлов
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
sep_id = 3
|
||||
|
||||
#наименование MasterSEPPool используется если установлен master sepId, также может быть пустым
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
sep_pool = "data_01"
|
||||
}
|
||||
}
|
||||
|
||||
#настройка worker группы
|
||||
#опциональный параметр
|
||||
#Первая указанная воркер-группа должна соответствовать изначально созданной вместе с кластером.
|
||||
# labels, annotations, taints для дефолтной worker группы указываются в корне ресурса при создании кластера.
|
||||
#labels, annotations, taints для дефолтной worker группы указываются в корне ресурса при создании кластера.
|
||||
workers {
|
||||
#имя группы
|
||||
#обязательный параметр
|
||||
@@ -115,27 +121,27 @@ resource "decort_k8s" "cluster" {
|
||||
|
||||
#кол-во node
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
num = 1
|
||||
|
||||
#кол-во cpu
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
cpu = 2
|
||||
|
||||
#кол-во RAM в Мбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
ram = 2048
|
||||
|
||||
#размер диска в Гбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk = 10
|
||||
|
||||
#Идентификатор SEP
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
sep_id = 1010
|
||||
|
||||
#Имя SEP pool'a
|
||||
@@ -145,7 +151,7 @@ resource "decort_k8s" "cluster" {
|
||||
}
|
||||
|
||||
#...Далее можно создавать произвольное кол-во дополнительных worker групп
|
||||
# labels, annotations и taints для последующих групп указываются непосредственно в блоке workers
|
||||
#labels, annotations и taints для последующих групп указываются непосредственно в блоке workers
|
||||
workers {
|
||||
#наименование worker группы
|
||||
#обязательный параметр
|
||||
@@ -154,81 +160,81 @@ resource "decort_k8s" "cluster" {
|
||||
|
||||
#кол-во node
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
num = 2
|
||||
|
||||
#кол-во cpu
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
cpu = 2
|
||||
|
||||
#кол-во RAM в Мбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
ram = 4096
|
||||
|
||||
#размер диска в Гбайтах
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
disk = 10
|
||||
|
||||
#Идентификатор SEP
|
||||
#идентификатор SEP
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
sep_id = 1010
|
||||
|
||||
#Имя SEP pool'a
|
||||
#имя SEP pool'a
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
sep_pool = "data01"
|
||||
|
||||
#Список лейблов
|
||||
#список лейблов
|
||||
#опциональный параметр
|
||||
#тип - массив строк
|
||||
labels = ["label1=value1", "label2=value2"]
|
||||
|
||||
#Список аннотаций
|
||||
#список аннотаций
|
||||
#опциональный параметр
|
||||
#тип - массив строк
|
||||
annotations = ["key1=value1", "key2=value2"]
|
||||
|
||||
#Список taints
|
||||
#список taints
|
||||
#опциональный параметр
|
||||
#тип - массив строк
|
||||
taints = ["key1=value1:NoSchedule", "key2=value2:NoExecute"]
|
||||
}
|
||||
|
||||
# id extnet
|
||||
#id extnet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
extnet_id = 0
|
||||
|
||||
# id vins
|
||||
# опциональный параметр
|
||||
# тип - число
|
||||
#id vins
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
vins_id = 1234
|
||||
|
||||
# создать Kubernetes cluster с masters nodes с подключенным LB
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
#создать Kubernetes cluster с masters nodes с подключенным LB
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
with_lb = true
|
||||
|
||||
|
||||
# пользовательские значения sysctl для LB
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
lb_sysctl_params = "some"
|
||||
# тип - список мап
|
||||
lb_sysctl_params = [{ text = "1", text = "some" }]
|
||||
|
||||
# позволяет создать схему отказоустройчивой LB
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
# тип - булев
|
||||
ha_mode = true
|
||||
|
||||
|
||||
# дополнительные SAN (Subject Alternative Names) для использования в процессе автоматического выписывания сертификата Кластера Kubernetes;
|
||||
# возможность взаимодействовать с кластером по FQDN
|
||||
# параметр получает список строк – IP-адреса и/или DNS (по формату RFC 1123 c поддержкой wildcard)
|
||||
# опциональный параметр
|
||||
# тип - массив строк
|
||||
additional_sans = ["192.168.201.0","192.168.201.1"]
|
||||
additional_sans = ["192.168.201.0", "192.168.201.1"]
|
||||
|
||||
# используется для определения настроек и действий, которые должны быть выполнены перед запуском любого другого компонента в кластере
|
||||
# это позволяет вам настраивать такие вещи, как регистрация node, настройка network и другие задачи инициализации
|
||||
@@ -267,37 +273,31 @@ resource "decort_k8s" "cluster" {
|
||||
|
||||
# перечень аргументов для cloud-init создаваемым группам узлов Worker
|
||||
# необязательный параметр
|
||||
# тип - файл
|
||||
# тип - файл с форматом в виде yaml
|
||||
cloud_init = file("initconfig.tftpl")
|
||||
|
||||
# при создании кластре использовать подключение только к сети ExtNet
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
# тип - булев
|
||||
extnet_only = true
|
||||
|
||||
# добавить ssl-сертификат в формате x509 pem
|
||||
# необязательный параметр
|
||||
# тип - файл
|
||||
# тип - файл с форматом в виде x509 pem
|
||||
oidc_cert = file("ca.crt")
|
||||
|
||||
# запуск,остановка кластера
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
# тип - булев
|
||||
start = true
|
||||
|
||||
# команда destroy удаляет кластер без возможности восстановления
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
# тип - булев
|
||||
permanently = true
|
||||
|
||||
}
|
||||
|
||||
output "test_cluster" {
|
||||
value = decort_k8s.cluster
|
||||
}
|
||||
|
||||
/*
|
||||
output "kubeconfig"{
|
||||
value = decort_k8s.cluster.kubeconfig
|
||||
}
|
||||
|
||||
*/
|
||||
176
samples/cloudapi/k8s/resource_k8s_cp/main.tf
Normal file
176
samples/cloudapi/k8s/resource_k8s_cp/main.tf
Normal file
@@ -0,0 +1,176 @@
|
||||
/*
|
||||
Пример использования
|
||||
Управление control plane кластера k8s
|
||||
Ресурс позволяет:
|
||||
1. Создать кластер
|
||||
2. Удалить кластер
|
||||
3. Настроить мастер-узел
|
||||
4. Изменить кол-во ВМ в мастер-узле
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_k8s_cp" "cp" {
|
||||
#название кластера
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "k8s-cp"
|
||||
|
||||
#K8sCI ID
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
k8sci_id = 55
|
||||
|
||||
#плагин сети (flannel, weavenet или calico)
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
network_plugin = "flannel"
|
||||
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
rg_id = 1387
|
||||
|
||||
#кол-во ядер мастер-узла
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
cpu = 2
|
||||
|
||||
#объем RAM мастер-узла
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
ram = 2048
|
||||
|
||||
#кол-во ВМ мастер-узла (1, 3 или 5)
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
num = 1
|
||||
|
||||
#размер диска мастер-узла
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
disk = 10
|
||||
|
||||
#описание кластера
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = "<DESCRIPTION>"
|
||||
|
||||
#id extnet
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
extnet_id = 0
|
||||
|
||||
#id vins
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
vins_id = 1234
|
||||
|
||||
#storage Endpoint ID
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
sep_id = 0
|
||||
|
||||
#SEP Pool
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
sep_pool = "pool"
|
||||
|
||||
#старт/стоп кластера
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
start = true
|
||||
|
||||
#создать кластер с/без балансировщика нагрузки
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
with_lb = true
|
||||
|
||||
#позволяет создать схему отказоустройчивой LB
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
ha_mode = true
|
||||
|
||||
#дополнительные SAN (Subject Alternative Names) для использования в процессе автоматического выписывания сертификата Кластера Kubernetes;
|
||||
#возможность взаимодействовать с кластером по FQDN
|
||||
#параметр получает список строк – IP-адреса и/или DNS (по формату RFC 1123 c поддержкой wildcard)
|
||||
#опциональный параметр
|
||||
#тип - массив строк
|
||||
additional_sans = ["192.168.201.0","192.168.201.1"]
|
||||
|
||||
#используется для определения настроек и действий, которые должны быть выполнены перед запуском любого другого компонента в кластере
|
||||
#это позволяет вам настраивать такие вещи, как регистрация node, настройка network и другие задачи инициализации
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
init_config = "{JSON string}"
|
||||
|
||||
#используется для определения глобальных настроек и конфигураций для всего кластера
|
||||
#он включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
cluster_config = "{JSON string}"
|
||||
|
||||
#используется для настройки поведения и параметров Kubelet, который является агентом primary node, запускаемым на каждом node кластера
|
||||
#он включает в себя такие параметры, как IP-адрес node, распределение ресурсов, политики удаления модулей и другие конфигурации, специфичные для Kubelet
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
kubelet_config = "{JSON string}"
|
||||
|
||||
#используется для настройки поведения и параметров присоединения node к кластеру
|
||||
#он включает в себя такие параметры, как режим прокси-сервера, диапазоны IP-адресов кластера и другие конфигурации, специфичные для Kube-proxy
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
kube_proxy_config = "{JSON string}"
|
||||
|
||||
#используется для настройки поведения и параметров присоединения node к кластеру
|
||||
#он включает в себя такие параметры, как cluster's control plane endpoint, токен и ключ сертификата
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
join_config = "{JSON string}"
|
||||
|
||||
#при создании кластре использовать подключение только к сети ExtNet
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
extnet_only = true
|
||||
|
||||
#добавить ssl-сертификат в формате x509 pem
|
||||
#необязательный параметр
|
||||
#тип - файл с форматом в виде x509 pem
|
||||
oidc_cert = file("ca.crt")
|
||||
|
||||
#пользовательские значения sysctl для LB
|
||||
#опциональный параметр
|
||||
#тип - список мап
|
||||
lb_sysctl_params = [{text = "1", text = "some"}]
|
||||
|
||||
#команда destroy удаляет кластер без возможности восстановления
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = true
|
||||
|
||||
}
|
||||
|
||||
output "cp_out" {
|
||||
value = decort_k8s_cp.cp
|
||||
}
|
||||
@@ -1,8 +1,13 @@
|
||||
/*
|
||||
Пример использования
|
||||
Управления worker groups (рабочики группами, wg) кластера
|
||||
Ресурс позволяет:
|
||||
1. Создавать wg
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
@@ -20,8 +25,6 @@ provider "decort" {
|
||||
controller_url = "https://ds1.digitalenergy.online"
|
||||
#oauth2_url = <DECORT_SSO_URL>
|
||||
oauth2_url = "https://sso.digitalenergy.online"
|
||||
#app_id = <APP-ID>
|
||||
#app_secret = <APP-SECRET>
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
@@ -29,7 +32,7 @@ provider "decort" {
|
||||
resource "decort_k8s_wg" "wg" {
|
||||
#id экземпляра k8s
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
k8s_id = 1234
|
||||
|
||||
#имя worker group
|
||||
@@ -39,34 +42,35 @@ resource "decort_k8s_wg" "wg" {
|
||||
|
||||
#количество worker node для создания
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#по - умолчанию - 1
|
||||
num = 2
|
||||
|
||||
#количество cpu для 1 worker node
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#по - умолчанию - 1
|
||||
cpu = 1
|
||||
|
||||
#количество RAM для одной worker node в Мбайтах
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#по-умолчанию - 1024
|
||||
ram = 1024
|
||||
|
||||
#размер загрузочного диска для worker node, в Гбайтах
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#по - умолчанию - 0
|
||||
#если установлен параметр 0, то размер диска будет равен размеру образа
|
||||
disk = 10
|
||||
|
||||
#Перечень аргументов для cloud-init для виртуальных машин worker групп
|
||||
#опциональный параметр
|
||||
#тип - файл
|
||||
#тип - файл с форматом в виде yaml
|
||||
#используется при создании и обновлении ресурса
|
||||
cloud_init = file("initconfig.tftpl")
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных о compute (виртуальной машине)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,10 +28,9 @@ provider "decort" {
|
||||
|
||||
data "decort_kvmvm" "comp" {
|
||||
#получение информации по идентификатору машины - compute_id
|
||||
|
||||
# id виртуальной машины
|
||||
# обязательный параметр
|
||||
# тип - число
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
compute_id = 11346
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных об аудитах compute (виртуальной машине)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_audits" "kvmvm_audits" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных об аудитах compute (виртуальной машине)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_get_audits" "kvmvm_get_audits" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение url compute (виртуальной машины)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_get_console_url" "kvmvm_get_console_url" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение логов compute (виртуальной машины)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_get_log" "kvmvm_get_log" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
|
||||
#путь до log файла
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных об списке compute (виртуальных машин)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_list" "compute_list" {
|
||||
#фильтр по id ВМ
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени ВМ
|
||||
@@ -37,7 +39,7 @@ data "decort_kvmvm_list" "compute_list" {
|
||||
|
||||
#id аккаунта для получения списка ВМ
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#фильтр по имени ресурсной группы
|
||||
@@ -47,7 +49,7 @@ data "decort_kvmvm_list" "compute_list" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -72,32 +74,34 @@ data "decort_kvmvm_list" "compute_list" {
|
||||
|
||||
#фильтр по id extnet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#extnet_id = 100
|
||||
|
||||
#флаг влючения в результат удаленных балансироващиков нагрузки
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#значение по-умолчанию - false
|
||||
#если не задан - выводятся все доступные неудаленные балансировщики
|
||||
#includedeleted = true
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
|
||||
#Включить в список вывода ВМ, принадлежащие k8s кластерам (при значении параметра true)
|
||||
#опциональный параметр
|
||||
#bool (default = false)
|
||||
#ignore_k8s = true
|
||||
|
||||
}
|
||||
|
||||
output "output" {
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных о списке удаленных compute (виртуальных машин)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_list_deleted" "compute_list" {
|
||||
#фильтр по id виртуальной машины
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени виртуальной машины
|
||||
@@ -37,7 +39,7 @@ data "decort_kvmvm_list_deleted" "compute_list" {
|
||||
|
||||
#фильтр по id аккаунта
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 100
|
||||
|
||||
#фильтр по имени ресурсной группы
|
||||
@@ -47,7 +49,7 @@ data "decort_kvmvm_list_deleted" "compute_list" {
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -67,18 +69,24 @@ data "decort_kvmvm_list_deleted" "compute_list" {
|
||||
|
||||
#фильтр по id extNet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#extnet_id = 100
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных о списке подключенных устройств (PCI)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,17 +29,17 @@ provider "decort" {
|
||||
data "decort_kvmvm_pci_device_list" "pci_device_list" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 100
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по id устройства
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#device_id = 100
|
||||
|
||||
#фильтр по имени устройства
|
||||
@@ -50,15 +52,21 @@ data "decort_kvmvm_pci_device_list" "pci_device_list" {
|
||||
#тип - строка
|
||||
#status = "ENABLED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных об списке port forwarding compute (виртуальных машин)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -15,6 +16,7 @@ terraform {
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_pfw_list" "kvmvm_pfw_list" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10524
|
||||
}
|
||||
|
||||
43
samples/cloudapi/kvmvm/data_kvmvm_snapshot_usage/main.tf
Normal file
43
samples/cloudapi/kvmvm/data_kvmvm_snapshot_usage/main.tf
Normal 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_kvmvm_snapshot_usage" "snapshot_usage" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
|
||||
#название снапшота
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
label = "label 1"
|
||||
}
|
||||
|
||||
output "output" {
|
||||
value = data.decort_kvmvm_snapshot_usage.snapshot_usage
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных об юзерах compute (виртуальной машины)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,12 +10,13 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
#controller_url = <DECORT_CONTROLLER_URL>
|
||||
@@ -27,7 +29,7 @@ provider "decort" {
|
||||
data "decort_kvmvm_user_list" "kvmvm_user_list" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 10154
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение данных о списке подключенных графических процессоров
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,12 +28,12 @@ provider "decort" {
|
||||
data "decort_kvmvm_vgpu_list" "vgpu_list" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
compute_id = 100
|
||||
|
||||
#фильтр по id графического процессора
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#gpu_id = 100
|
||||
|
||||
#фильтр по типу графического процессора
|
||||
@@ -47,18 +48,24 @@ data "decort_kvmvm_vgpu_list" "vgpu_list" {
|
||||
|
||||
#фильтр "включая удаленные графические процессоры"
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#includedeleted = "false"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
425
samples/cloudapi/kvmvm/resource_kvmvm/main.tf
Normal file
425
samples/cloudapi/kvmvm/resource_kvmvm/main.tf
Normal file
@@ -0,0 +1,425 @@
|
||||
/*
|
||||
Пример использования
|
||||
Работа с ресурсом kvmvm (compute)
|
||||
Ресурс позволяет:
|
||||
1. Создавать compute
|
||||
2. Редактировать compute
|
||||
3. Удалять compute
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_kvmvm" "comp" {
|
||||
#имя compute
|
||||
#может быть изменен
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "test-tf-compute-update-new"
|
||||
|
||||
#id resource group
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
rg_id = 1111
|
||||
|
||||
#тип драйвера для compute
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
driver = "KVM_X86"
|
||||
|
||||
#число cpu
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
cpu = 1
|
||||
|
||||
#кол-во оперативной памяти, МБ
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
ram = 2048
|
||||
|
||||
#размер загрузочного диска
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
boot_disk_size = 20
|
||||
|
||||
#id сепа для boot диска
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
sep_id = 1
|
||||
|
||||
#название пула
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
pool = "data02"
|
||||
|
||||
#конфигурация cloud init
|
||||
#опциональный параметр
|
||||
#тип - файл в формате JSON/YAML
|
||||
cloud_init = file("initconfig.tftpl")
|
||||
|
||||
#описание compute
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
description = "test update description in tf words update"
|
||||
|
||||
#id образа диска для создания compute
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
image_id = 111
|
||||
|
||||
#создание без загрузочного диска в остановленном состоянии
|
||||
#опциональный параметр
|
||||
#если значение равно True, параметры image_id, boot_disk_size, sep_id, pool игнорируются
|
||||
#тип - булев
|
||||
without_boot_disk = true
|
||||
|
||||
#необходимость выравнивать ВМ по NUMA
|
||||
#опциональный параметр
|
||||
#возможные значения - "none, "strict", "loose"
|
||||
#значение по умолчанию - "none"
|
||||
#тип - строка
|
||||
numa_affinity = "loose"
|
||||
|
||||
#необходимость запускать ВМ на выделенных CPU ядрах
|
||||
#опциональный параметр
|
||||
#значение по умолчанию - false
|
||||
#тип - булев
|
||||
cpu_pin = true
|
||||
|
||||
#необходимость использовать для выделения RAM виртуальной машины Huge Pages
|
||||
#опциональный параметр
|
||||
#значение по умолчанию - false
|
||||
#тип - булев
|
||||
hp_backed = true
|
||||
|
||||
#создание и добавление диска дял compute
|
||||
#опциональный параметр
|
||||
#тип - список дисков
|
||||
disks {
|
||||
#Имя диска
|
||||
#Обязательный для диска параметр
|
||||
#тип - строка
|
||||
disk_name = "disk_name"
|
||||
|
||||
#Размер диска
|
||||
#Обязательный для диска параметр
|
||||
#тип - целоетчисло
|
||||
size = 5
|
||||
|
||||
#тип диска
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
disk_type = "D"
|
||||
|
||||
#id стораджа
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
sep_id = 1
|
||||
|
||||
#название пула
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
pool = "data01"
|
||||
|
||||
#описание диска
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = ""
|
||||
|
||||
#id образа
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
image_id = 378
|
||||
|
||||
#флаг для удаления диска
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = false
|
||||
}
|
||||
|
||||
#правила affinity
|
||||
#опциональный параметр
|
||||
#может быть один, несколько или ни одного блока
|
||||
#тип - блок правил
|
||||
affinity_rules {
|
||||
#тип правила
|
||||
#обязательный параметр
|
||||
#возможные значения - compute или node
|
||||
#тип - строка
|
||||
topology = "compute"
|
||||
|
||||
#строгость правила
|
||||
#обязательный параметр
|
||||
#возможные значения - RECOMMENDED и REQUIRED
|
||||
#тип - строка
|
||||
policy = "RECOMMENDED"
|
||||
|
||||
#режим проверки
|
||||
#обязательный параметр
|
||||
#возможные значения - ANY, EQ, NE
|
||||
#тип - строка
|
||||
mode = "ANY"
|
||||
|
||||
#ключ правила
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
key = "testkey"
|
||||
|
||||
#ключ правила
|
||||
#необязательный параметр
|
||||
#тип - строка
|
||||
value = "testvalue"
|
||||
}
|
||||
|
||||
#правила anti-affinity
|
||||
#опциональный параметр
|
||||
#может быть один, несколько или ни одного блока
|
||||
# тип - список правил
|
||||
anti_affinity_rules {
|
||||
#тип правила
|
||||
#обязательный параметр
|
||||
#возможные значения - compute или node
|
||||
#тип - строка
|
||||
topology = "compute"
|
||||
|
||||
#строгость правила
|
||||
#обязательный параметр
|
||||
#возможные значения - RECOMMENDED и REQUIRED
|
||||
#тип - строка
|
||||
policy = "RECOMMENDED"
|
||||
|
||||
#режим проверки
|
||||
#обязательный параметр
|
||||
#возможные значения - ANY, EQ, NE
|
||||
#тип - строка
|
||||
mode = "ANY"
|
||||
|
||||
#ключ правила
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
key = "testkey"
|
||||
|
||||
#ключ правила
|
||||
#необязательный параметр
|
||||
#тип -строка
|
||||
value = "testvalue"
|
||||
}
|
||||
|
||||
#установка метки для вм
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
affinity_label = "test4"
|
||||
|
||||
|
||||
#наименование системы
|
||||
#опциональный параметр
|
||||
#используется при создании вм
|
||||
#по умолчанию - не задан
|
||||
#тип - строка
|
||||
is = ""
|
||||
|
||||
#назначение вм
|
||||
#опциональный параметр
|
||||
#используется при создании вм
|
||||
#по умолчанию - не задан
|
||||
#тип - строка
|
||||
ipa_type = ""
|
||||
|
||||
#id экстра дисков
|
||||
#опциональный параметр
|
||||
#тип - список целых чисел
|
||||
extra_disks = [1234, 4322, 1344]
|
||||
|
||||
#присоеденения сетей и удаление сетей в компьюте
|
||||
#опциональный параметр
|
||||
#тип - блок сетей
|
||||
network {
|
||||
#тип сети VINS/EXTNET (для любого драйвера) и VFNIC (для KVM_X86)
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
net_type = "VINS"
|
||||
|
||||
#id сети
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
net_id = 1234
|
||||
|
||||
#ip адрес входящий в сеть
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ip_address = "127.0.0.1"
|
||||
}
|
||||
|
||||
#добавление и удаление тэгов
|
||||
#опциональный параметр
|
||||
#тип - блок тэгов
|
||||
tags {
|
||||
#Ключ для тэга
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
key = "key"
|
||||
|
||||
#значения тэга
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
value = "value"
|
||||
}
|
||||
|
||||
#добавление и удаление port forwarding
|
||||
#опциональный параметр
|
||||
#тип - блок переадресации портов
|
||||
port_forwarding {
|
||||
#номер внешнего начального порта для правила
|
||||
#Обязательный параметр
|
||||
#тип - целое число
|
||||
public_port_start = 2023
|
||||
|
||||
#номер внешнего последнего порта для правила
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#по умолчанию - -1
|
||||
public_port_end = 2023
|
||||
|
||||
#номер внутреннего базового порта
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
local_port = 80
|
||||
|
||||
#сетевой протокол
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
proto = "tcp"
|
||||
}
|
||||
|
||||
#предоставить/забрать пользователю доступ к компьюту
|
||||
#опциональный параметр
|
||||
#тип - блок прав пользователя
|
||||
user_access {
|
||||
#имя юзера, которому предоставляем доступ
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
username = "kasim_baybikov_1@decs3o"
|
||||
|
||||
#права: 'R' - только на чтение, 'RCX' - чтение/запись, 'ARCXDU' - админ
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
access_type = "ARCXDU"
|
||||
}
|
||||
|
||||
#создать/удалить снапшот компьюта
|
||||
#опциональный параметр
|
||||
#тип - блок снапшотов
|
||||
snapshot {
|
||||
#лейбл снапшота
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
label = "label1"
|
||||
}
|
||||
|
||||
#rollback на нужный снапшот
|
||||
#опциональный параметр
|
||||
#Не имеет смысла при отсутсвии снапшотов
|
||||
#тип - блок rollback
|
||||
rollback {
|
||||
#Лейбл снапшота
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
label = "label1"
|
||||
}
|
||||
|
||||
#вставить/удалить СD rom
|
||||
#опциональный параметр
|
||||
#максимальное кол-во - 1
|
||||
#тип - блок cd
|
||||
cd {
|
||||
#id образа диска CD rom
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
cdrom_id = 344
|
||||
}
|
||||
|
||||
#добавить компьют на стэк
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
pin_to_stack = true
|
||||
|
||||
#флаг доступности компьюта для проведения с ним операций
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
enabled = true
|
||||
|
||||
#pause/resume компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
pause = true
|
||||
|
||||
#сделать компьют заново
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
reset = true
|
||||
|
||||
#восстановить компьют из корзины
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
restore = true
|
||||
|
||||
#флаг для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
auto_start = true
|
||||
|
||||
#флаг для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
force_stop = true
|
||||
|
||||
#флаг для ресайза компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
force_resize = true
|
||||
|
||||
#поле для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
data_disks = "KEEP"
|
||||
|
||||
#запуск/стоп компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
started = true
|
||||
|
||||
#detach диска при удалении компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
detach_disks = true
|
||||
|
||||
#флаг для удаления компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = false
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_kvmvm.comp
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение информации о load balancer (балансировщик нагрузок)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -28,7 +29,7 @@ provider "decort" {
|
||||
data "decort_lb" "lb" {
|
||||
#id балансировщика нагрузок
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
lb_id = 238
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
Пример использования
|
||||
Получение списка load balancer (балансировщиков нагрузки)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -9,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +30,7 @@ provider "decort" {
|
||||
data "decort_lb_list" "lbl" {
|
||||
#фильтр по id балансировщика нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени балансировщика нагрузки
|
||||
@@ -39,12 +40,12 @@ data "decort_lb_list" "lbl" {
|
||||
|
||||
#id аккаунта для получения списка балансировщиков нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -67,22 +68,28 @@ data "decort_lb_list" "lbl" {
|
||||
#тип - строка
|
||||
#back_ip = "ENABLED"
|
||||
|
||||
#флаг влючения в результат удаленных балансироващиков нагрузки
|
||||
#флаг влючения в результат удаленных балансировщиков нагрузки
|
||||
#опциональный параметр
|
||||
#тип - булев тип
|
||||
#тип - булев
|
||||
#значение по-умолчанию - false
|
||||
#если не задан - выводятся все доступные неудаленные балансировщики
|
||||
#includedeleted = true
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка удаленных load balancer (балансировщиков нагрузок)
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -10,8 +10,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,7 @@ provider "decort" {
|
||||
data "decort_lb_list_deleted" "lbld" {
|
||||
#фильтр по id балансировщика нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени балансировщика нагрузки
|
||||
@@ -39,12 +39,12 @@ data "decort_lb_list_deleted" "lbld" {
|
||||
|
||||
#id аккаунта для получения списка балансировщиков нагрузки
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#account_id = 11111
|
||||
|
||||
#фильтр по id ресурсной группы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#rg_id = 100
|
||||
|
||||
#фильтр по техническому статусу
|
||||
@@ -62,15 +62,21 @@ data "decort_lb_list_deleted" "lbld" {
|
||||
#тип - строка
|
||||
#back_ip = "ENABLED"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
@@ -1,107 +1,120 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурса load balancer
|
||||
Ресурс позволяет:
|
||||
1. Создавать load balancer
|
||||
2. Редактировать load balancer
|
||||
3. Удалять load balancer
|
||||
|
||||
*/
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
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_lb" "lb" {
|
||||
#id ресурсной группы для создания балансировщика
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
rg_id = 1111
|
||||
|
||||
#наименование load balancer
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "tf-test-lb"
|
||||
|
||||
#id внешней сети и id виртуальной сети не могут быть одновременно = 0
|
||||
|
||||
#id внешней сети
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
extnet_id = 6
|
||||
|
||||
#id виртуальной сети
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
vins_id = 758
|
||||
|
||||
#флаг запуска load balancer
|
||||
#обязательный параметр
|
||||
#тип - булев тип
|
||||
#по умолчанию - true
|
||||
#если load balancer был в статусе "stopped" (start = false),
|
||||
#то для успешного старта, он должен быть доступен (enable = true)
|
||||
start = true
|
||||
|
||||
# позволяет создать схему отказоустройчивой LB
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
#ha_mode = true
|
||||
|
||||
#описание
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#desc = "temp super lb for testing tf provider"
|
||||
|
||||
#флаг доступности load balancer
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#enable = true
|
||||
|
||||
#флаг перезапуска load balancer
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#перезагрузка срабатывает только при изменении флага с false на true
|
||||
#restart = false
|
||||
|
||||
#флаг сброса конфигурации load balancer
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#сброс срабатывает только при изменении флага с false на true
|
||||
#config_reset = false
|
||||
|
||||
#флаг моментального удаления load balancer
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#по умолчанию - false
|
||||
#применяется при выполнении команды terraform destroy
|
||||
#permanently = false
|
||||
|
||||
#флаг восстановления load balancer
|
||||
#необязательный параметр
|
||||
#тип - булев тип
|
||||
#восстановить можно load balancer, удаленным с флагом permanently = false
|
||||
#restore = true
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_cb_lb.lb
|
||||
}
|
||||
/*
|
||||
Пример использования
|
||||
Управление балансировщиком нагрузки (load balancer)
|
||||
Ресурс позволяет:
|
||||
1. Создавать load balancer
|
||||
2. Редактировать load balancer
|
||||
3. Удалять load balancer
|
||||
/*
|
||||
|
||||
#Расскомментируйте этот код
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_lb" "lb" {
|
||||
#id ресурсной группы для со
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
rg_id = 1111
|
||||
|
||||
#наименование load balancer
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "tf-test-lb"
|
||||
|
||||
#id внешней сети
|
||||
#опциональный параметр
|
||||
#id внешней сети и id виртуальной сети не могут быть одновременно = 0
|
||||
#тип - целое число
|
||||
extnet_id = 6
|
||||
|
||||
#id виртуальной сети
|
||||
#опциональный параметр
|
||||
#id внешней сети и id виртуальной сети не могут быть одновременно = 0
|
||||
#тип - целое число
|
||||
vins_id = 758
|
||||
|
||||
#флаг запуска load balancer
|
||||
#обязательный параметр
|
||||
#если load balancer был в статусе "stopped" (start = false),
|
||||
#то для успешного старта, он должен быть доступен (enable = true)
|
||||
#по умолчанию - true
|
||||
#тип - булев
|
||||
start = true
|
||||
|
||||
#позволяет создать схему отказоустройчивой LB
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
ha_mode = true
|
||||
|
||||
#описание
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = "temp super lb for testing tf provider"
|
||||
|
||||
#флаг доступности load balancer
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
enable = true
|
||||
|
||||
#флаг перезапуска load balancer
|
||||
#перезагрузка срабатывает только при изменении флага с false на true
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
restart = false
|
||||
|
||||
#флаг сброса конфигурации load balancer
|
||||
#сброс срабатывает только при изменении флага с false на true
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
config_reset = false
|
||||
|
||||
#флаг моментального удаления load balancer
|
||||
#опциональный параметр
|
||||
#применяется при выполнении команды terraform destroy
|
||||
#по умолчанию - false
|
||||
#тип - булев
|
||||
permanently = false
|
||||
|
||||
#флаг восстановления load balancer
|
||||
#опциональный параметр
|
||||
#восстановить можно load balancer, удаленным с флагом permanently = false
|
||||
#тип - булев
|
||||
restore = true
|
||||
|
||||
#флаг используемый при рестарте load balancer
|
||||
#опциональный параметр
|
||||
#при значении "true" рестарт производится на обоих нодах в HA mode
|
||||
#значение по умолчанию - true
|
||||
#тип - булев
|
||||
safe = true
|
||||
|
||||
#пользовательские значения sysctl для LB
|
||||
#опциональный параметр
|
||||
#тип - список мап
|
||||
sysctl_params = [{ text = "1", text = "some" }]
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_lb.lb
|
||||
}
|
||||
@@ -5,8 +5,8 @@
|
||||
1. Создавать backend
|
||||
2. Редактировать backend
|
||||
3. Удалять backend
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -14,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ provider "decort" {
|
||||
resource "decort_lb_backend" "lb" {
|
||||
#id балансировщика нагрузок
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
lb_id = 668
|
||||
|
||||
#имя бекенда для создания сервера
|
||||
@@ -42,65 +42,65 @@ resource "decort_lb_backend" "lb" {
|
||||
name = "testBackend"
|
||||
|
||||
#алгоритм балансировки
|
||||
#опицональный параметр
|
||||
#тип - строка
|
||||
#опциональный параметр
|
||||
#по умолчанию - "roundrobin"
|
||||
#доступные значения - "roundrobin", "static-rr", "leastconn"
|
||||
#algorithm = "roundrobin"
|
||||
#тип - строка
|
||||
lgorithm = "roundrobin"
|
||||
|
||||
#-------------------
|
||||
#настройки для серверов по умолчанию
|
||||
#-------------------
|
||||
|
||||
#интервал между проверками, в миллисекундах
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 5000
|
||||
#inter = 5000
|
||||
#тип - целое число
|
||||
inter = 5000
|
||||
|
||||
#интервал между проверками доступности сервера после восстановления, в миллисекундах
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 1000
|
||||
#downinter = 1000
|
||||
#тип - целое число
|
||||
downinter = 1000
|
||||
|
||||
#кол-во проверок, которые сервер должен успешно пройти
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 2
|
||||
#rise = 2
|
||||
#тип - целое число
|
||||
rise = 2
|
||||
|
||||
#кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 2
|
||||
#fall = 2
|
||||
#тип - целое число
|
||||
fall = 2
|
||||
|
||||
#кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 60000
|
||||
#slowstart = 60000
|
||||
#тип - целое число
|
||||
slowstart = 60000
|
||||
|
||||
#максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 250
|
||||
#maxconn = 250
|
||||
#тип - целое число
|
||||
maxconn = 250
|
||||
|
||||
#максимальное кол-во соединений в очереди серевера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 256
|
||||
#maxqueue = 256
|
||||
#тип - целое число
|
||||
maxqueue = 256
|
||||
|
||||
#вес сервера для балансировки
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#мин - 0
|
||||
#макс - 255
|
||||
#по умолчанию - 100
|
||||
#weight = 100
|
||||
#тип - целое число
|
||||
weight = 100
|
||||
|
||||
timeouts {
|
||||
create = "5m"
|
||||
@@ -108,6 +108,7 @@ resource "decort_lb_backend" "lb" {
|
||||
update = "5m"
|
||||
delete = "5m"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -5,8 +5,8 @@
|
||||
1. Создавать server
|
||||
2. Редактировать server
|
||||
3. Удалять server
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -14,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ provider "decort" {
|
||||
resource "decort_lb_backend_server" "lb" {
|
||||
#id балансировщика нагрузок
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
lb_id = 668
|
||||
|
||||
#имя бекенда для создания сервера
|
||||
@@ -53,64 +53,64 @@ resource "decort_lb_backend_server" "lb" {
|
||||
|
||||
#порт сервера
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
port = 6553
|
||||
|
||||
#проверка доступности сервера
|
||||
#опицональный параметр
|
||||
#тип - строка
|
||||
#опциональный параметр
|
||||
#по умолчанию - "enabled"
|
||||
#доступные значения - "disabled", "enabled"
|
||||
#тип - строка
|
||||
#check = "enabled"
|
||||
|
||||
#интервал между проверками, в миллисекундах
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 5000
|
||||
#тип - целое число
|
||||
#inter = 5000
|
||||
|
||||
#интервал между проверками доступности сервера после восстановления, в миллисекундах
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 1000
|
||||
#тип - целое число
|
||||
#downinter = 1000
|
||||
|
||||
#кол-во проверок, которые сервер должен успешно пройти
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#по умолчанию - 2
|
||||
#rise = 2
|
||||
|
||||
#кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 2
|
||||
#тип - целое число
|
||||
#fall = 2
|
||||
|
||||
#кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 60000
|
||||
#тип - целое число
|
||||
#slowstart = 60000
|
||||
|
||||
#максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 250
|
||||
#тип - целое число
|
||||
#maxconn = 250
|
||||
|
||||
#максимальное кол-во соединений в очереди серевера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#по умолчанию - 256
|
||||
#тип - целое число
|
||||
#maxqueue = 256
|
||||
|
||||
#вес сервера для балансировки
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#опциональный параметр
|
||||
#мин - 0
|
||||
#макс - 255
|
||||
#по умолчанию - 100
|
||||
#тип - целое число
|
||||
#weight = 100
|
||||
|
||||
timeouts {
|
||||
@@ -119,6 +119,7 @@ resource "decort_lb_backend_server" "lb" {
|
||||
update = "5m"
|
||||
delete = "5m"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -4,8 +4,8 @@
|
||||
Ресурс позволяет:
|
||||
1. Создавать frontend
|
||||
2. Удалять frontend
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -13,8 +13,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -32,7 +32,7 @@ provider "decort" {
|
||||
resource "decort_lb_frontend" "lb" {
|
||||
#id балансировщика нагрузок
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
lb_id = 668
|
||||
|
||||
#имя бекенда для создания фронтенда
|
||||
@@ -51,6 +51,7 @@ resource "decort_lb_frontend" "lb" {
|
||||
update = "5m"
|
||||
delete = "5m"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
@@ -5,8 +5,8 @@
|
||||
1. Создавать привязку
|
||||
2. Редактировать привязку
|
||||
3. Удалять привязку
|
||||
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
@@ -14,8 +14,8 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ provider "decort" {
|
||||
resource "decort_lb_frontend_bind" "lb" {
|
||||
#id балансировщика нагрузок
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
lb_id = 668
|
||||
|
||||
#имя фронтенда для создания привязки
|
||||
@@ -53,7 +53,7 @@ resource "decort_lb_frontend_bind" "lb" {
|
||||
|
||||
#порт для привязки фронтенда
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
port = 1111
|
||||
|
||||
timeouts {
|
||||
@@ -62,6 +62,7 @@ resource "decort_lb_frontend_bind" "lb" {
|
||||
update = "5m"
|
||||
delete = "5m"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
36
samples/cloudapi/location/data_location_url/main.tf
Normal file
36
samples/cloudapi/location/data_location_url/main.tf
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о площадках
|
||||
Ресурс позволяет:
|
||||
1. получать информацию об url площадки (grid/location).
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_location_url" "lu" {
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = data.decort_location_url.lu
|
||||
}
|
||||
@@ -1,19 +1,19 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о доступных локациях
|
||||
Получение информации о доступных локациях.
|
||||
Ресурс позволяет:
|
||||
Используется для получения информации о grid_id для создания ресурсов
|
||||
1) получать информацию о grid_id для создания ресурсов
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,7 @@ data "decort_locations_list" "ll" {
|
||||
|
||||
#фильтр по id локации
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#by_id = 100
|
||||
|
||||
#фильтр по имени локации
|
||||
@@ -49,14 +49,20 @@ data "decort_locations_list" "ll" {
|
||||
#тип - строка
|
||||
#location_code = "europe"
|
||||
|
||||
#сортировка по одному из поддерживаемых полей
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#формат - "+поле" по возрастанию / "-поле" по убыванию
|
||||
#sort_by = "+name"
|
||||
|
||||
#кол-во страниц для вывода
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опицональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#size = 1
|
||||
}
|
||||
|
||||
61
samples/cloudapi/pfw/resource_pfw/main.tf
Normal file
61
samples/cloudapi/pfw/resource_pfw/main.tf
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
Пример использования
|
||||
Управление правилами трансляции сетевых портов для виртуальных серверов
|
||||
Ресурс позволяет:
|
||||
1. Создавать правила для трансляции сетевых портов
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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_pfw" "pfw" {
|
||||
#id виртуальной машины
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
compute_id = 11269
|
||||
|
||||
#начальный порт правила
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
public_port_start = 200
|
||||
|
||||
#внутренний порт
|
||||
#обязательный параметр
|
||||
#тип - целое число
|
||||
local_base_port = 22
|
||||
|
||||
#протокол соединения (tcp / udp)
|
||||
#обязательный параметр
|
||||
##тип - строка
|
||||
proto = "tcp"
|
||||
|
||||
#конечный порт (включительно)
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
public_port_end = 21321
|
||||
|
||||
}
|
||||
|
||||
output "pfw_out" {
|
||||
value = decort_pfw.pfw
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение списка доступных образов
|
||||
*/
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
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_disk" "acl" {
|
||||
account_id = 88366
|
||||
gid = 212
|
||||
disk_name = "super-disk-re"
|
||||
size_max = 20
|
||||
permanently = true
|
||||
reason = "delete"
|
||||
shareable = false
|
||||
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
|
||||
total_bytes_sec_max = 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
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_disk.acl
|
||||
}
|
||||
@@ -1,68 +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
|
||||
}
|
||||
|
||||
resource "decort_flipgroup" "fg" {
|
||||
# ID аккаунта
|
||||
# Обязательный параметр
|
||||
# int
|
||||
account_id = 999
|
||||
|
||||
# Наименование Flipgroup
|
||||
# Обязательный параметр
|
||||
# string
|
||||
name = "flipgroup_name"
|
||||
|
||||
# Тип сети (EXTNET, ViNS)
|
||||
# Обязательный параметр
|
||||
# string
|
||||
net_type = "EXTNET"
|
||||
|
||||
# ID сети
|
||||
# Обязательный параметр
|
||||
# int
|
||||
net_id = 13
|
||||
|
||||
# Тип клиентов (в данный момент поддерживается только тип 'compute')
|
||||
# Обязательный параметр
|
||||
# string
|
||||
client_type = "compute"
|
||||
|
||||
# IP-адрес
|
||||
# Опциональный параметр
|
||||
# string
|
||||
ip = "127.0.0.1"
|
||||
|
||||
# Список клиентов, прикрепленных к флипгруппе
|
||||
# Опциональный параметр
|
||||
# []int
|
||||
client_ids = [11269]
|
||||
|
||||
# Описание флипгруппы
|
||||
# Опциональный параметр
|
||||
# string
|
||||
desc = "CHANGED"
|
||||
}
|
||||
|
||||
output "fg_out" {
|
||||
value = decort_flipgroup.fg
|
||||
}
|
||||
@@ -1,108 +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
|
||||
}
|
||||
|
||||
resource "decort_image" "img" {
|
||||
# Наименование образа
|
||||
# Обязательный параметр
|
||||
# string
|
||||
name = "image_name"
|
||||
|
||||
# grid ID платформы
|
||||
# Обязательный параметр
|
||||
# int
|
||||
gid = 2002
|
||||
|
||||
# Драйверы компьютов, подходящие для данного образа
|
||||
# Обязательный параметр
|
||||
# []string
|
||||
drivers = ["KVM_X86"]
|
||||
|
||||
# Тип образа (linux, windows и др.)
|
||||
# Обязательный параметр
|
||||
# string
|
||||
type = "linux"
|
||||
|
||||
# Прямая ссылка на образ
|
||||
# Обязательный параметр
|
||||
# string
|
||||
url = "https://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-virt-3.17.3-x86_64.iso"
|
||||
|
||||
# Тип загрузчика (bios/uefi)
|
||||
# Обязательный параметр
|
||||
# string
|
||||
boot_type = "bios"
|
||||
|
||||
# ID аккаунта
|
||||
# Опциональный параметр
|
||||
# int
|
||||
account_id = 138
|
||||
|
||||
# Поддержка hot resize
|
||||
# Опциональный параметр
|
||||
# bool
|
||||
hot_resize = true
|
||||
|
||||
# Юзернейм для образа
|
||||
# Опциональный параметр
|
||||
# string
|
||||
username = "userx"
|
||||
|
||||
# Пароль для образа
|
||||
# Опциональный параметр
|
||||
# string
|
||||
password = "passx"
|
||||
|
||||
# Юзернейм для загрузки binary media
|
||||
# Опциональный параметр
|
||||
# string
|
||||
username_dl = "userxdl"
|
||||
|
||||
# Пароль для загрузки binary media
|
||||
# Опциональный параметр
|
||||
# string
|
||||
password_dl = "passxdl"
|
||||
|
||||
# Storage endpoint provider ID
|
||||
# Опциональный параметр
|
||||
# int
|
||||
sep_id = 1
|
||||
|
||||
# Pool для образа
|
||||
# Опциональный параметр
|
||||
# string
|
||||
pool_name = "pool"
|
||||
|
||||
# Архитектура обраща (X86_64 / PPC64_LE)
|
||||
# Опциональный параметр
|
||||
# string
|
||||
architecture = "PPC64_LE"
|
||||
|
||||
# Флаг окончательного удаления
|
||||
# Опциональный параметр
|
||||
# булев тип
|
||||
permanently = true
|
||||
}
|
||||
|
||||
output "img_out" {
|
||||
value = decort_image.img
|
||||
}
|
||||
@@ -1,164 +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"
|
||||
#app_id = <APP-ID>
|
||||
#app_secret = <APP-SECRET>
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
resource "decort_k8s_cp" "cp" {
|
||||
# Название кластера
|
||||
# Обязательный параметр
|
||||
# string
|
||||
name = "k8s-cp"
|
||||
|
||||
# K8sCI ID
|
||||
# Обязательный параметр
|
||||
# int
|
||||
k8sci_id = 55
|
||||
|
||||
# Плагин сети (flannel, weavenet или calico)
|
||||
# Обязательный параметр
|
||||
# string
|
||||
network_plugin = "flannel"
|
||||
|
||||
# ID ресурсной группы
|
||||
# Обязательный параметр
|
||||
# int
|
||||
rg_id = 1387
|
||||
|
||||
# Кол-во ядер мастер-узла
|
||||
# Опциональный параметр
|
||||
# int
|
||||
cpu = 2
|
||||
|
||||
# Объем RAM мастер-узла
|
||||
# Опциональный параметр
|
||||
# int
|
||||
ram = 2048
|
||||
|
||||
# Кол-во ВМ мастер-узла (1 или 3)
|
||||
# Опциональный параметр
|
||||
# int
|
||||
num = 1
|
||||
|
||||
# Размер диска мастер-узла
|
||||
# Опциональный параметр
|
||||
# int
|
||||
disk = 10
|
||||
|
||||
# Описание кластера
|
||||
# Опциональный параметр
|
||||
# string
|
||||
desc = "<DESCRIPTION>"
|
||||
|
||||
# id extnet
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
extnet_id = 0
|
||||
|
||||
# id vins
|
||||
# опциональный параметр
|
||||
# тип - число
|
||||
vins_id = 1234
|
||||
|
||||
# Storage Endpoint ID
|
||||
# Опциональный параметр
|
||||
# id
|
||||
sep_id = 0
|
||||
|
||||
# SEP Pool
|
||||
# Опциональный параметр
|
||||
# string
|
||||
sep_pool = "pool"
|
||||
|
||||
# Старт/Стоп кластера
|
||||
# Опциональный параметр
|
||||
# bool
|
||||
start = true
|
||||
|
||||
# Создать кластер с/без балансировщика нагрузки
|
||||
# Опциональный параметр
|
||||
# bool
|
||||
with_lb = true
|
||||
|
||||
# позволяет создать схему отказоустройчивой LB
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
ha_mode = true
|
||||
|
||||
# дополнительные SAN (Subject Alternative Names) для использования в процессе автоматического выписывания сертификата Кластера Kubernetes;
|
||||
# возможность взаимодействовать с кластером по FQDN
|
||||
# параметр получает список строк – IP-адреса и/или DNS (по формату RFC 1123 c поддержкой wildcard)
|
||||
# опциональный параметр
|
||||
# тип - массив строк
|
||||
additional_sans = ["192.168.201.0","192.168.201.1"]
|
||||
|
||||
# используется для определения настроек и действий, которые должны быть выполнены перед запуском любого другого компонента в кластере
|
||||
# это позволяет вам настраивать такие вещи, как регистрация node, настройка network и другие задачи инициализации
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
init_config = "{JSON string}"
|
||||
|
||||
# используется для определения глобальных настроек и конфигураций для всего кластера
|
||||
# он включает в себя такие параметры, как имя кластера, настройки DNS, методы аутентификации и другие конфигурации в масштабах кластера
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
cluster_config = "{JSON string}"
|
||||
|
||||
# используется для настройки поведения и параметров Kubelet, который является агентом primary node, запускаемым на каждом node кластера
|
||||
# он включает в себя такие параметры, как IP-адрес node, распределение ресурсов, политики удаления модулей и другие конфигурации, специфичные для Kubelet
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
kubelet_config = "{JSON string}"
|
||||
|
||||
# используется для настройки поведения и параметров присоединения node к кластеру
|
||||
# он включает в себя такие параметры, как режим прокси-сервера, диапазоны IP-адресов кластера и другие конфигурации, специфичные для Kube-proxy
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
kube_proxy_config = "{JSON string}"
|
||||
|
||||
# используется для настройки поведения и параметров присоединения node к кластеру
|
||||
# он включает в себя такие параметры, как cluster's control plane endpoint, токен и ключ сертификата
|
||||
# опциональный параметр
|
||||
# тип - строка
|
||||
join_config = "{JSON string}"
|
||||
|
||||
# при создании кластер использовать подключение только к сети ExtNet
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
extnet_only = true
|
||||
|
||||
# добавить ssl-сертификат в формате x509 pem
|
||||
# необязательный параметр
|
||||
# тип - файл
|
||||
oidc_cert = file("ca.crt")
|
||||
|
||||
# команда destroy удаляет кластер без возможности восстановления
|
||||
# опциональный параметр
|
||||
# тип - булев тип
|
||||
permanently = true
|
||||
|
||||
}
|
||||
|
||||
output "cp_out" {
|
||||
value = decort_k8s_cp.cp
|
||||
}
|
||||
@@ -1,400 +0,0 @@
|
||||
/*
|
||||
Пример использования
|
||||
Работа с ресурсом kvmvm (compute)
|
||||
Ресурс позволяет:
|
||||
1. Создавать compute
|
||||
2. Редактировать compute
|
||||
3. Удалять compute
|
||||
*/
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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"
|
||||
#app_id = <APP-ID>
|
||||
#app_secret = <APP-SECRET>
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
resource "decort_kvmvm" "comp" {
|
||||
#имя compute
|
||||
#обязательный параметр
|
||||
#мб изменен
|
||||
#тип - строка
|
||||
name = "test-tf-compute-update-new"
|
||||
|
||||
#id resource group
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
rg_id = 1111
|
||||
|
||||
#тип драйвера для compute
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
driver = "KVM_X86"
|
||||
|
||||
#число cpu
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
cpu = 1
|
||||
|
||||
#кол-во оперативной памяти, МБ
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
ram = 2049
|
||||
|
||||
#id образа диска для создания compute
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
image_id = 111
|
||||
|
||||
#размер загрузочного диска
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
boot_disk_size = 20
|
||||
|
||||
#ID сепа для boot диска
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
sep_id = 1
|
||||
|
||||
#Название пула
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
pool = "data02"
|
||||
|
||||
#конфигурация cloud init
|
||||
#опциональный параметр
|
||||
#тип - файл в формате JSON/YAML
|
||||
cloud_init = file("initconfig.tftpl")
|
||||
|
||||
#описание compute
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
description = "test update description in tf words update"
|
||||
|
||||
#Создание и добавление диска дял compute
|
||||
#опциональный параметр
|
||||
#тип - список дисков
|
||||
disks {
|
||||
#Имя диска
|
||||
#Обязательный для диска параметр
|
||||
#Тип - строка
|
||||
disk_name = "disk_name"
|
||||
|
||||
#Размер диска
|
||||
#Обязательный для диска параметр
|
||||
#Тип - число
|
||||
size = 5
|
||||
|
||||
#Тип диска
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
disk_type = "D"
|
||||
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
sep_id = 1
|
||||
|
||||
#Название пула
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
pool = "data01"
|
||||
|
||||
#Описание диска
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = ""
|
||||
|
||||
#Айди образа
|
||||
#опциональный параметр
|
||||
#опциональный параметр
|
||||
image_id = 378
|
||||
|
||||
#Флаг для удаления диска
|
||||
#опциональный параметр
|
||||
#тип - bool
|
||||
permanently = false
|
||||
}
|
||||
|
||||
#правила affinity
|
||||
#опциональный параметр
|
||||
#может быть один, несколько или ни одного блока
|
||||
#тип - блок
|
||||
affinity_rules {
|
||||
#тип правила
|
||||
#возможные значения - compute или node
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
topology = "compute"
|
||||
|
||||
#строгость правила
|
||||
#возможные значения - RECOMMENDED и REQUIRED
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
policy = "RECOMMENDED"
|
||||
|
||||
#режим проверки
|
||||
#возможные значения - ANY, EQ, NE
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
mode = "ANY"
|
||||
|
||||
#ключ правила
|
||||
#обязательный параметр
|
||||
#тип строка
|
||||
key = "testkey"
|
||||
|
||||
#ключ правила
|
||||
#необязательный параметр
|
||||
#тип строка
|
||||
value = "testvalue"
|
||||
}
|
||||
|
||||
#правила anti-affinity
|
||||
#опциональный параметр
|
||||
#может быть один, несколько или ни одного блока
|
||||
#тип - блок
|
||||
anti_affinity_rules {
|
||||
#тип правила
|
||||
#возможные значения - compute или node
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
topology = "compute"
|
||||
|
||||
#строгость правила
|
||||
#возможные значения - RECOMMENDED и REQUIRED
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
policy = "RECOMMENDED"
|
||||
|
||||
#режим проверки
|
||||
#возможные значения - ANY, EQ, NE
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
mode = "ANY"
|
||||
|
||||
#ключ правила
|
||||
#обязательный параметр
|
||||
#тип строка
|
||||
key = "testkey"
|
||||
|
||||
#ключ правила
|
||||
#необязательный параметр
|
||||
#тип строка
|
||||
value = "testvalue"
|
||||
}
|
||||
|
||||
#установка метки для вм
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
affinity_label = "test4"
|
||||
|
||||
|
||||
#наименование системы
|
||||
#опциональный параметр
|
||||
#используется при создании вм
|
||||
#по умолчанию - не задан
|
||||
#тип - строка
|
||||
is=""
|
||||
|
||||
#назначение вм
|
||||
#опциональный параметр
|
||||
#используется при создании вм
|
||||
#по умолчанию - не задан
|
||||
#тип - строка
|
||||
ipa_type = ""
|
||||
|
||||
#Id экстра дисков
|
||||
#опциональный параметр
|
||||
#тип - список чисел
|
||||
extra_disks = [1234, 4322, 1344]
|
||||
|
||||
#Присоеденения сетей и удаление сетей в компьюте
|
||||
#опциональный параметр
|
||||
#тип - блок
|
||||
network {
|
||||
#Тип сети VINS/EXTNET
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
net_type = "VINS"
|
||||
|
||||
#ID сети
|
||||
#Обязательный параметр
|
||||
#тип - число
|
||||
net_id = 1234
|
||||
|
||||
#IP адрес входящий в сеть
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ip_address = "127.0.0.1"
|
||||
}
|
||||
|
||||
#добавление и удаление тэгов
|
||||
#опциональный параметр
|
||||
#тип - блок
|
||||
tags {
|
||||
#Ключ для тэга
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
key = "key"
|
||||
|
||||
#Значения тэга
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
value = "value"
|
||||
}
|
||||
|
||||
#добавление и удаление port forwarding
|
||||
#опциональный параметр
|
||||
#тип - блок
|
||||
port_forwarding {
|
||||
#номер внешнего начального порта для правила
|
||||
#Обязательный параметр
|
||||
#тип - число
|
||||
public_port_start = 2023
|
||||
|
||||
#номер внешнего последнего порта для правила
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#по умолчанию - -1
|
||||
public_port_end = 2023
|
||||
|
||||
#номер внутреннего базового порта
|
||||
#Обязательный параметр
|
||||
#тип - число
|
||||
local_port = 80
|
||||
|
||||
#сетевой протокол
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
proto = "tcp"
|
||||
}
|
||||
|
||||
#предоставить/забрать пользователю доступ к компьюту
|
||||
#опциональный параметр
|
||||
#тип - блок
|
||||
user_access {
|
||||
#Имя юзера, которому предоставляем доступ
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
username = "kasim_baybikov_1@decs3o"
|
||||
|
||||
#Права: 'R' - только на чтение, 'RCX' - чтение/запись, 'ARCXDU' - админ
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
access_type = "ARCXDU"
|
||||
}
|
||||
|
||||
#Создать/удалить снапшот компьюта
|
||||
#опциональный параметр
|
||||
#тип - блок
|
||||
snapshot {
|
||||
#Лейбл снапшота
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
label = "label1"
|
||||
}
|
||||
|
||||
#Rollback на нужный снапшот
|
||||
#опциональный параметр
|
||||
#Не имеет смысла при отсутсвии снапшотов
|
||||
#тип - блок
|
||||
rollback {
|
||||
#Лейбл снапшота
|
||||
#Обязательный параметр
|
||||
#тип - строка
|
||||
label = "label1"
|
||||
}
|
||||
|
||||
#Вставить/удалить СD rom
|
||||
#опциональный параметр
|
||||
#Максимальное кол-во - 1
|
||||
#тип - блок
|
||||
cd {
|
||||
#ID образа диска CD rom
|
||||
#Обязательный параметр
|
||||
#тип - число
|
||||
cdrom_id = 344
|
||||
}
|
||||
|
||||
#Добавить компьют на стэк
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
pin_to_stack = true
|
||||
|
||||
#Флаг доступности компьюта для проведения с ним операций
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
enabled = true
|
||||
|
||||
#pause/resume компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
pause = true
|
||||
|
||||
#сделать компьют заново
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
reset = true
|
||||
|
||||
#восстановить компьют из корзины
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
restore = true
|
||||
|
||||
#флаг для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
auto_start = true
|
||||
|
||||
#флаг для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
force_stop = true
|
||||
|
||||
#флаг для ресайза компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
force_resize = true
|
||||
|
||||
#поле для редеплоя компьюта
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
data_disks = "KEEP"
|
||||
|
||||
#запуск/стоп компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
started = true
|
||||
|
||||
#detach диска при удалении компьюта
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
detach_disks = true
|
||||
|
||||
#Флаг для удаления компьюта
|
||||
#опциональный параметр
|
||||
#тип - bool
|
||||
permanently = false
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_kvmvm.comp
|
||||
}
|
||||
@@ -1,53 +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
|
||||
}
|
||||
|
||||
resource "decort_pfw" "pfw" {
|
||||
# ID виртуальной машины
|
||||
# Обязательный параметр
|
||||
# int
|
||||
compute_id = 11269
|
||||
|
||||
# Начальный порт правила
|
||||
# Обязательный параметр
|
||||
# int
|
||||
public_port_start = 200
|
||||
|
||||
# Внутренний порт
|
||||
# Обязательный параметр
|
||||
# int
|
||||
local_base_port = 22
|
||||
|
||||
# Протокол соединения (tcp / udp)
|
||||
# Обязательный параметр
|
||||
# string
|
||||
proto = "tcp"
|
||||
|
||||
# Конечный порт (включительно)
|
||||
# Опциональный параметр
|
||||
# int
|
||||
public_port_end = 21321
|
||||
}
|
||||
|
||||
output "pfw_out" {
|
||||
value = decort_pfw.pfw
|
||||
}
|
||||
@@ -1,67 +0,0 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурса 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 = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
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"
|
||||
|
||||
# список виртуальных машин, которым будет предоставлен доступ к роуту
|
||||
#опциональный параметр
|
||||
#тип - массив чисел
|
||||
compute_ids = [111,222]
|
||||
}
|
||||
|
||||
output "sr" {
|
||||
value = decort_vins_static_route.sr
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
/*
|
||||
Пример использования
|
||||
Получение информации о ресурсной группе RG
|
||||
Получение информации о ресурсной группе (RG)
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -29,9 +29,10 @@ provider "decort" {
|
||||
data "decort_resgroup" "rg" {
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
rg_id = 1535
|
||||
#причина для выполняния действия
|
||||
#тип - целое число
|
||||
rg_id = 1535
|
||||
|
||||
#причина для выполнения действия
|
||||
#необязятельный параметр
|
||||
#тип - строка
|
||||
reason = "TEST"
|
||||
@@ -2,18 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о специальной группе компьютов
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/* terraform {
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
} */
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -27,8 +29,9 @@ provider "decort" {
|
||||
data "decort_rg_affinity_group_computes" "lc" {
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
rg_id = 123
|
||||
|
||||
#название специальной группы компьютов
|
||||
#обязательное поле
|
||||
#тип - строка
|
||||
@@ -2,19 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о списке компьютов из определенной группы
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/* terraform {
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
} */
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -28,8 +29,9 @@ provider "decort" {
|
||||
data "decort_rg_affinity_groups_get" "get_groups" {
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
rg_id = 123
|
||||
|
||||
#название специальной группы компьютов
|
||||
#обязательное поле
|
||||
#тип - строка
|
||||
@@ -2,18 +2,20 @@
|
||||
Пример использования
|
||||
Получение информации о списке специальных групп компьютов
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
|
||||
|
||||
/* terraform {
|
||||
/*
|
||||
terraform {
|
||||
required_providers {
|
||||
decort = {
|
||||
version = "<VERSION>"
|
||||
source = "basis/decort/decort"
|
||||
version = "<VERSION>"
|
||||
}
|
||||
}
|
||||
} */
|
||||
}
|
||||
*/
|
||||
|
||||
provider "decort" {
|
||||
authenticator = "decs3o"
|
||||
@@ -27,18 +29,18 @@ provider "decort" {
|
||||
data "decort_rg_affinity_groups_list" "list_groups" {
|
||||
#id ресурсной группы
|
||||
#обязательный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
rg_id = 123
|
||||
|
||||
#номер страницы для отображения
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#page = 1
|
||||
|
||||
#размер страницы
|
||||
#опциональный параметр
|
||||
#тип - число
|
||||
#тип - целое число
|
||||
#если не задан - выводятся все доступные данные
|
||||
#size = 1
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user