This commit is contained in:
2023-12-18 18:55:52 +03:00
parent e2ee45ee14
commit 20050bc169
213 changed files with 37547 additions and 2873 deletions

View File

@@ -26,7 +26,7 @@ provider "decort" {
allow_unverified_ssl = true
}
data "decort_cb_account_deleted_list" "adl" {
data "decort_cb_account_list_deleted" "adl" {
#номер страницы для отображения
#опциональный параметр
#тип - число
@@ -57,5 +57,5 @@ data "decort_cb_account_deleted_list" "adl" {
}
output "test" {
value = data.decort_cb_account_deleted_list.adl
value = data.decort_cb_account_list_deleted.adl
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение аудита по guid
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_audit" "audit" {
#guid аудита
#обязательный параметр
#тип - строка
audit_guid = "abcdefg"
}
output "test" {
value = data.decort_cb_audit.audit
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение списка заданий, связанных с указанный событием.
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_audit_linked_jobs" "jobs" {
#guid аудита
#обязательный параметр
#тип - строка
audit_guid = "abcdefg"
}
output "test" {
value = data.decort_cb_audit_linked_jobs.jobs
}

View File

@@ -0,0 +1,68 @@
/*
Пример использования
Получение списка аудитов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_audit_list" "al" {
#фильтр по аудитам с временной меткой после указанного значения
#опциональный параметр
#тип - число
#timestamp_at = 123456
#фильтр по аудитам с временной меткой до указанного значения
#опциональный параметр
#тип - число
#timestamp_to = 123456
#фильтр по пользователю (Mongo RegExp поддерживаются)
#опциональный параметр
#тип - строка
#user = "username"
#фильтр по api endpoint (Mongo RegExp поддерживаются)
#опциональный параметр
#тип - строка
#call = "/restmachine/cloudbroker/audit/list"
#фильтр по HTTP статус-коду
#опциональный параметр
#тип - число
#status_code = 200
#номер страницы для отображения
#опциональный параметр
#тип - число
#page = 2
#размер страницы
#опциональный параметр
#тип - число
#size = 3
}
output "test" {
value = data.decort_cb_audit_list.al
}

View File

@@ -0,0 +1,79 @@
/*
Пример использования
Получение списка удаленных дисков
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_disk_list_deleted" "dld" {
#фильтр по id диска
#опциональный параметр
#тип - число
#by_id = 11111
#фильтр по имени диска
#опциональный параметр
#тип - строка
#name = "disk name"
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "account name"
#фильтр по максимальному размеру диска
#опциональный параметр
#тип - число
#disk_max_size = 3
#фильтр по полю shared
#опциональный параметр
#тип - булев
#shared = true
#id аккаунта для получения списка дисков
#опциональный параметр
#тип - число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#кол-во страниц для вывода
#опицональный параметр
#тип - число
#page = 1
#размер страницы
#опицональный параметр
#тип - число
#size = 1
}
output "test" {
value = data.decort_cb_disk_list_deleted.dld
}

View File

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

View File

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

View File

@@ -0,0 +1,85 @@
/*
Пример использования
Получение списка доступных неприсоединенных дисков
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_disk_list_unattached" "dlu" {
#фильтр по id диска
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "user"
#фильтр по максимальному размеру диска
#опциональный параметр
#тип - число
#disk_max_size = 100
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по типу
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#фильтр по id аккаунта
#опциональный параметр
#тип - число
#account_id = 100
#фильтр по id sep
#опциональный параметр
#тип - число
#sep_id = 1
#фильтр по имени pool
#опциональный параметр
#тип - строка
#pool = "test"
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.decort_cb_disk_list_unattached.dlu
}

View File

@@ -0,0 +1,42 @@
/*
Пример использования
Получение конкретного снапшота
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_disk_snapshot" "ds" {
#Номер диска
#обязательный параметр
#тип - число
disk_id = 20100
#Ярлык диска
#обязательный параметр
#тип - строка
label = "label"
}
output "test" {
value = data.decort_cb_disk_snapshot.ds
}

View File

@@ -0,0 +1,37 @@
/*
Пример использования
Получение списка снапшотов диска
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_disk_snapshot_list" "ds" {
#Номер диска
#обязательный параметр
#тип - число
disk_id = 20100
}
output "test" {
value = data.decort_cb_disk_snapshot_list.ds
}

View File

@@ -0,0 +1,37 @@
/*
Пример использования
Получение flipgroup по id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso-alpha.dev.decs.online"
controller_url = "https://alpha.dev.decs.online"
app_id = ""
app_secret = ""
}
data "decort_cb_flipgroup" "fg" {
# ID флипгруппы
# Обязательный параметр
# int
flipgroup_id = 999
}
output "fg_out" {
value = data.decort_cb_flipgroup.fg
}

View File

@@ -0,0 +1,79 @@
/*
Пример использования
Получение списка flipgroup
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso-alpha.dev.decs.online"
controller_url = "https://alpha.dev.decs.online"
app_id = ""
app_secret = ""
}
data "decort_cb_flipgroup_list" "fg" {
#фильтр по id flipgroup
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени flipgroup
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по id vins
#опциональный параметр
#тип - число
#vins_id = 100
#фильтр по имени vins
#опциональный параметр
#тип - строка
#vins_name = "test"
#фильтр по id extnet
#опциональный параметр
#тип - число
#extnet_id = 100
#фильтр по IP
#опциональный параметр
#тип - строка
#by_ip = "1.1.1.1.1"
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 11111
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 3
}
output "fg_out" {
value = data.decort_cb_flipgroup_list.fg
}

View File

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

View File

@@ -0,0 +1,50 @@
/*
Пример использования
Получение снимка платформы с дополнительной диагностической информацией
(журналы и т. д.).
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_grid_get_diagnosis" "gd" {
#id grid для получения информации
#обязательный параметр
#тип - число
gid = 215
}
data "decort_cb_grid_post_diagnosis" "pd" {
#id grid для получения информации
#обязательный параметр
#тип - число
gid = 215
}
output "test-gd" {
value = data.decort_cb_grid_get_diagnosis.gd
}
output "test-pd" {
value = data.decort_cb_grid_post_diagnosis.pd
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Проверка статуса активности текущей среды.
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_grid_get_status" "gs" {
#нет входящих параметров
}
data "decort_cb_grid_post_status" "ps" {
#нет входящих параметров
}
output "test-gs" {
value = data.decort_cb_grid_get_status.gs
}
output "test-ps" {
value = data.decort_cb_grid_post_status.ps
}

View File

@@ -0,0 +1,35 @@
/*
Пример использования
Получение информации и потребленных и зарезервированных ресурсах во всех grid
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_grid_list_consumption" "lc" {
#нет входящих параметров
}
output "test" {
value = data.decort_cb_grid_list_consumption.lc
}

View File

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

View File

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

View File

@@ -0,0 +1,80 @@
/*
Пример использования
Получение списка k8ci
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8ci_list" "k8cil" {
#фильтр по id k8ci
#опциональный параметр
#тип - число
#by_id = 111
#фильтр по имени k8ci
#опциональный параметр
#тип - строка
#name = "name"
#фильтр по статусу k8ci
#опциональный параметр
#тип - строка
#status = "status"
#фильтр по worker driver
#опциональный параметр
#тип - строка
#worker_driver = "KVM_X86"
#фильтр по master driver
#опциональный параметр
#тип - строка
#master_driver = "KVM_X86"
#фильтр по network plugin
#опциональный параметр
#тип - строка
#network_plugin = "flannel"
#исключить из результата недоступные k8ci
#опциональный параметр
#тип - булево значение
#include_disabled = "true"
#номер страницы для отображения
#опциональный параметр
#тип - число
#page = 2
#размер страницы
#опциональный параметр
#тип - число
#size = 3
}
output "test" {
value = data.decort_cb_k8ci_list.k8cil
}

View File

@@ -0,0 +1,70 @@
/*
Пример использования
Получение списка удаленных k8ci
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8ci_list_deleted" "k8cild" {
#фильтр по id k8ci
#опциональный параметр
#тип - число
#by_id = 111
#фильтр по имени k8ci
#опциональный параметр
#тип - строка
#name = "name"
#фильтр по worker driver
#опциональный параметр
#тип - строка
#worker_driver = "KVM_X86"
#фильтр по master driver
#опциональный параметр
#тип - строка
#master_driver = "KVM_X86"
#фильтр по network plugin
#опциональный параметр
#тип - строка
#network_plugin = "flannel"
#номер страницы для отображения
#опциональный параметр
#тип - число
#page = 2
#размер страницы
#опциональный параметр
#тип - число
#size = 3
}
output "test" {
value = data.decort_cb_k8ci_list_deleted.k8cild
}

View File

@@ -0,0 +1,37 @@
/*
Пример использования
Получение информации о k8s кластере
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s" "k8s" {
#id кластера
#обязательный параметр
#тип - число
k8s_id = 49304
}
output "output_k8s" {
value = data.decort_cb_k8s.k8s
}

View File

@@ -0,0 +1,31 @@
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso.digitalenergy.online"
controller_url = "https://mr4.digitalenergy.online"
app_id = ""
app_secret = ""
}
data "decort_cb_k8s_computes" "computes" {
# ID кластера
# Обязательный параметр
k8s_id = 999
}
output "computes_out" {
value = data.decort_cb_k8s_computes.computes
}

View File

@@ -0,0 +1,90 @@
/*
Пример использования
Получение списка доступных кластеров
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s_list" "k8s_list" {
#фильтр по id кластера
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени кластера
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по ip
#опциональный параметр
#тип - строка
#ip_address = "test"
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 100
#фильтр по id балансировщика нагрузки
#опциональный параметр
#тип - число
#lb_id = 100
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#bservice_id = 100
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "STOPPED"
#включение удаленных k8s в результат
#опциональный параметр
#тип - булев тип
#если не задан - выводятся все неудаленные данные
# include_deleted = true
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
# page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
# size = 1
}
output "output_k8s_list" {
value = data.decort_cb_k8s_list.k8s_list
}

View File

@@ -0,0 +1,80 @@
/*
Пример использования
Получение списка удаленных кластеров
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s_list_deleted" "k8s_list_deleted" {
#фильтр по id кластера
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени кластера
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по ip
#опциональный параметр
#тип - строка
#ip_address = "test"
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 100
#фильтр по id балансировщика нагрузки
#опциональный параметр
#тип - число
#lb_id = 100
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#bservice_id = 100
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "STOPPED"
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output_k8s_list_deleted" {
value = data.decort_cb_k8s_list_deleted.k8s_list_deleted
}

View File

@@ -0,0 +1,42 @@
/*
Пример использования
Получение информации о k8s кластере
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s_wg" "k8s_wg" {
#id кластера
#обязательный параметр
#тип - число
k8s_id = 49304
#id группы воркеров
#обязательный параметр
#тип - число
wg_id = 43329
}
output "output_k8s_wg" {
value = data.decort_cb_k8s_wg.k8s_wg
}

View File

@@ -0,0 +1,45 @@
/*
Пример использования
Получение информации о мета данных рабочей группы k8s кластера
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s_wg_cloud_init" "wg_cloud_init" {
#id кластера
#обязательный параметр
#тип - число
k8s_id = 977
#id группы воркеров
#обязательный параметр
#тип - число
wg_id = 2110
}
output "wg_cloud_init" {
value = data.decort_cb_k8s_wg_cloud_init.wg_cloud_init
}

View File

@@ -0,0 +1,37 @@
/*
Пример использования
Получение списка доступных групп воркеров в кластере
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_k8s_wg_list" "k8s_wg_list" {
#id кластера
#обязательный параметр
#тип - число
k8s_id = 49304
}
output "output_k8s_wg_list" {
value = data.decort_cb_k8s_wg_list.k8s_wg_list
}

View File

@@ -0,0 +1,44 @@
/*
Пример использования
Получение данных о compute (виртуальной машине).
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm" "comp" {
#получение информации по идентификатору машины - compute_id
# id виртуальной машины
# обязательный параметр
# тип - число
compute_id = 11346
# прична запроса
# опциональный параметр
# тип - строка
reason = "test"
}
output "test" {
value = data.decort_cb_kvmvm.comp
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение словаря ВМ (виртуальных машин), разделенного по правилам affinity и anti-affinity.
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_affinity_relations" "aff_rel" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 48
}
output "output" {
value = data.decort_cb_kvmvm_affinity_relations.aff_rel
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение данных об аудитах compute (виртулаьной машине)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_audits" "kvmvm_audits" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 10154
}
output "output" {
value = data.decort_cb_kvmvm_audits.kvmvm_audits
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение информации о текущем порядке загрузки ВМ (виртуальной машины).
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_boot_order_get" "boot_order" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 48
}
output "output" {
value = data.decort_cb_kvmvm_boot_order_get.boot_order
}

View File

@@ -0,0 +1,44 @@
/*
Пример использования
Получение данных об аудитах compute (виртулаьной машине)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_get_audits" "kvmvm_get_audits" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 10154
#причина запроса
#опциональный параметр
#тип - строка
#reason = "test"
}
output "output" {
value = data.decort_cb_kvmvm_get_audits.kvmvm_get_audits
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение url compute (виртулаьной машины)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_get_console_url" "kvmvm_get_console_url" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 10154
}
output "output" {
value = data.decort_cb_kvmvm_get_console_url.kvmvm_get_console_url
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Получение логов compute (виртуальной машины)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_get_log" "kvmvm_get_log" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 10154
#путь до log файла
#обязательный параметр
#тип - строка
path = "/var/log/file.log"
}
output "output" {
value = data.decort_cb_kvmvm_get_log.kvmvm_get_log
}

View File

@@ -0,0 +1,106 @@
/*
Пример использования
Получение данных об списке compute (виртуальных машин)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_list" "compute_list" {
#фильтр по id ВМ
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени ВМ
#опциональный параметр
#тип - строка
#name = "test"
#id аккаунта для получения списка ВМ
#опциональный параметр
#тип - число
#account_id = 11111
#фильтр по имени ресурсной группы
#опциональный параметр
#тип - строка
#rg_name = "test"
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 100
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "STOPPED"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по ip
#опциональный параметр
#тип - строка
#ip_address = "test"
#фильтр по имени extnet
#опциональный параметр
#тип - строка
#extnet_name = "test"
#фильтр по id extnet
#опциональный параметр
#тип - число
#extnet_id = 100
#флаг влючения в результат удаленных балансироващиков нагрузки
#опциональный параметр
#тип - булев тип
#значение по-умолчанию - false
#если не задан - выводятся все доступные неудаленные балансировщики
#includedeleted = true
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 1
#Включить в список вывода ВМ, принадлежащие k8s кластерам (при значении параметра true)
#опциональный параметр
#bool (default = false)
#ignore_k8s = true
}
output "output" {
value = data.decort_cb_kvmvm_list.compute_list
}

View File

@@ -0,0 +1,95 @@
/*
Пример использования
Получение данных о списке удаленных compute (виртуальных машин)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_list_deleted" "compute_list" {
#фильтр по id виртуальной машины
#опциональный параметр
#тип - число
#by_id = 100
#фильтр по имени виртуальной машины
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по id аккаунта
#опциональный параметр
#тип - число
#account_id = 100
#фильтр по имени ресурсной группы
#опциональный параметр
#тип - строка
#rg_name = "test"
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 100
#фильтр по техническому статусу
#опциональный параметр
#тип - строка
#tech_status = "some"
#фильтр по ip
#опциональный параметр
#тип - строка
#ip_address = "test"
#фильтр по имени extNet
#опциональный параметр
#тип - строка
#extnet_name = "test"
#фильтр по id extNet
#опциональный параметр
#тип - число
#extnet_id = 100
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 1
#Включить в список вывода ВМ, принадлежащие k8s кластерам (при значении параметра true)
#опциональный параметр
#bool (default = false)
#ignore_k8s = true
}
output "output" {
value = data.decort_cb_kvmvm_list_deleted.compute_list
}

View File

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

View File

@@ -0,0 +1,66 @@
/*
Пример использования
Получение данных о списке подключенных устройств (PCI)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_pci_device_list" "pci_device_list" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 100
#фильтр по id ресурсной группы
#опциональный параметр
#тип - число
#rg_id = 100
#фильтр по id устройства
#опциональный параметр
#тип - число
#device_id = 100
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output" {
value = data.decort_cb_kvmvm_pci_device_list.pci_device_list
}

View File

@@ -0,0 +1,44 @@
/*
Пример использования
Получение данных об списке port forwarding compute (виртулаьных машин)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_pfw_list" "kvmvm_pfw_list" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 48
#причина запроса
#опциональный параметр
#тип - строка
reason = "test"
}
output "output" {
value = data.decort_cb_kvmvm_pfw_list.kvmvm_pfw_list
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение списка моментальных снимков ВМ (виртуальных машин).
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_snapshot_list" "kvmvm_snapshot_list" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 48
}
output "output" {
value = data.decort_cb_kvmvm_snapshot_list.kvmvm_snapshot_list
}

View File

@@ -0,0 +1,44 @@
/*
Пример использования
Получение настояего размера снимка ВМ (виртуальной машины) в хранилище.
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_snapshot_usage" "snp_usage" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 48
#label снимка
#опциональный параметр
#тип - строка
label = "test"
}
output "output" {
value = data.decort_cb_kvmvm_snapshot_usage.snp_usage
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение данных об юзерах compute (виртулаьной машины)
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_user_list" "kvmvm_user_list" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 10154
}
output "output" {
value = data.decort_cb_kvmvm_user_list.kvmvm_user_list
}

View File

@@ -0,0 +1,70 @@
/*
Пример использования
Получение данных о списке подключенных графических процессоров
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_kvmvm_vgpu_list" "vgpu_list" {
#id виртуальной машины
#обязательный параметр
#тип - число
compute_id = 100
#фильтр по id графического процессора
#опциональный параметр
#тип - число
#gpu_id = 100
#фильтр по типу графического процессора
#опциональный параметр
#тип - строка
#type = "NVIDIA"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр "включая удаленные графические процессоры"
#опциональный параметр
#тип - булев тип
#includedeleted = "false"
#номер страницы для отображения
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#page = 1
#размер страницы
#опциональный параметр
#тип - число
#если не задан - выводятся все доступные данные
#size = 1
}
output "output" {
value = data.decort_cb_kvmvm_vgpu_list.vgpu_list
}

View File

@@ -0,0 +1,37 @@
/*
Пример использования
Получение информации о 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
}
data "decort_cb_lb" "lb" {
#id балансировщика нагрузок
#обязательный параметр
#тип - число
lb_id = 238
}
output "test" {
value = data.decort_cb_lb.lb
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,37 @@
/*
Получение списка текущего потребления ресурсов ресурсной группы
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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://alpha.dev.decs.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso-alpha.dev.decs.online"
allow_unverified_ssl = true
}
data "decort_cb_rg_resource_consumption_get" "rc_get" {
#id ресурсной группы
#обязательный параметр
#тип - число
rg_id = 111
}
output "test" {
value = data.decort_cb_rg_resource_consumption_get.rc_get
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,68 @@
/*
Пример использования
Получение информации о списке винсов в ресурсной группе
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_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_cb_rg_list_vins.list_vins
}

View File

@@ -0,0 +1,34 @@
/*
Получение списка текущего потребления ресурсов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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://alpha.dev.decs.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso-alpha.dev.decs.online"
allow_unverified_ssl = true
}
data "decort_cb_rg_resource_consumption_list" "rc_list" {
#Нет входных параметров
}
output "test" {
value = data.decort_cb_rg_resource_consumption_list.rc_list
}

View File

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

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение стека по id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_cb_stack" "stack" {
#id стека
#обязательный параметр
#тип - число
stack_id = 1
}
output "test" {
value = data.decort_cb_stack.stack
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,44 @@
/*
Пример использования
vins static route
Получение информации о static route в данном Vins
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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://mr4.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_vins_static_route" "route" {
#обязательный параметр
#id vins в котором добавлены routes
#тип - число
vins_id = 1111
#обязательный параметр
#id route
#тип - число
route_id = 1
}
output "route" {
value = data.decort_cb_vins_static_route.route
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
vins static route list
Получение информации о всех static routes в данном Vins
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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://mr4.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_vins_static_route_list" "route" {
#обязательный параметр
#id vins в котором добавлены routes
#тип - число
vins_id = 111
}
output "route" {
value = data.decort_cb_vins_static_route_list.route
}

View File

@@ -0,0 +1,53 @@
/*
Пример использования
Ресурс снапшота диска
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_disk_snapshot" "ds" {
#Номер диска
#обязательный параметр
#тип - число
disk_id = 20100
#Ярлык диска
#обязательный параметр
#тип - строка
label = "label"
#флаг rollback
#опциональный параметр
#тип - bool
#значение по умолчанию - false
#rollback = true
#timestamp
#опциональный параметр
#тип - число
#применимо совместно с rollback = true
#timestamp = 15
}
output "test" {
value = decort_cb_disk_snapshot.ds
}

View File

@@ -0,0 +1,72 @@
/*
Пример использования
ресурса флипгруппы
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso-alpha.dev.decs.online"
controller_url = "https://alpha.dev.decs.online"
app_id = ""
app_secret = ""
}
resource "decort_cb_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_cb_flipgroup.fg
}

View File

@@ -0,0 +1,103 @@
/*
Пример использования
Ресурса k8ci
Ресурс позволяет:
1. Создавать k8ci
2. Редактировать k8ci
3. Удалять k8ci
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_k8ci" "k8ci" {
#имя k8ci
#обязательный параметр
#тип - строка
name = "test"
#тег версии
#обязательный параметр
#тип - строка
version = "1.1.1"
#тип master driver
#обязательный параметр
#тип - строка
master_driver = "KVM_X86"
#тип worker driver
#обязательный параметр
#тип - строка
worker_driver = "KVM_X86"
#максимальное число master компутов
#обязательный параметр
#тип - число
max_master_count = 1
#максимальное число worker компутов
#обязательный параметр
#тип - число
max_worker_count = 1
#id образа для master
#обязательный параметр
#тип - число
master_image_id = 4
#id образа для worker
#обязательный параметр
#тип - число
worker_image_id = 4
#network plugins
#обязательный параметр
#тип - список строк
network_plugins = ["flannel"]
#доступность k8ci
#опциональный параметр
#тип - булево значение
#enabled = false
#флаг для моментального удаления k8ci
#опциональный параметр
#тип - булевый
#permanently = true
#описание
#опциональный параметр
#тип - строка
#desc = "some"
#доступность k8ci другим аккаунтам
#опциональный параметр
#тип - список чисел
#shared_with = [1111]
}
output "test" {
value = decort_cb_k8ci.k8ci
}

View File

@@ -0,0 +1,169 @@
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso.digitalenergy.online"
controller_url = "https://mr4.digitalenergy.online"
app_id = ""
app_secret = ""
}
resource "decort_cb_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
enabled = true
# Удалить кластер безвозвратно
# Опциональный параметр
# bool
permanently = true
# Восстановить кластер из корзины
# Опциональный параметр
# bool
restore = 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")
}
output "cp_out" {
value = decort_cb_k8s_cp.cp
}

View File

@@ -0,0 +1,9 @@
---
users:
- groups: users, wheel
name: user
plain_text_passwd: examplePassword
primary_group: user
ssh_authorized_keys:
- ssh-rsa EXAMPLE%id_rsa.pub
sudo: ALL=(ALL) NOPASSWD:ALL

View File

@@ -0,0 +1,96 @@
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
oauth2_url = "https://sso.digitalenergy.online"
controller_url = "https://mr4.digitalenergy.online"
app_id = ""
app_secret = ""
}
resource "decort_cb_k8s_wg" "wg" {
#id экземпляра k8s
#обязательный параметр
#тип - число
k8s_id = 1234 //это значение должно быть и результат вызова decort_cb_k8s.cluster.k8s_id
#имя worker group
#обязательный параметр
#тип - строка
name = "workers-2"
#количество worker node для создания
#опциональный параметр
#тип - число
#по - умолчанию - 1
num = 2
#количество cpu для 1 worker node
#опциональный параметр
#тип - число
#по - умолчанию - 1
cpu = 1
#количество RAM для одной worker node в Мбайтах
#опциональный параметр
#тип - число
#по-умолчанию - 1024
ram = 1024
#размер загрузочного диска для worker node, в Гбайтах
#опциональный параметр
#тип - число
#по - умолчанию - 0
#если установлен параметр 0, то размер диска будет равен размеру образа
disk = 10
#список строк с labels для worker группы, в формате: ["label1=value1", "label2=value2"]
#опциональный параметр
#тип - массив строк
labels = ["label1=value1", "label2=value2"]
#Список строк с annotations для worker группы, в формате: ["key1=value1", "key2=value2"]
#опциональный параметр
#тип - массив строк
annotations = ["key1=value1", "key2=value2"]
#Список строк с taints для worker группы, в формате: ["key1=value1:NoSchedule", "key2=value2:NoExecute"]
#опциональный параметр
#тип - массив строк
taints = ["key1=value1", "key2=value2"]
#ID СХД для создания загрузочных дисков для Worker-групп по умолчанию. Использует sepId образа, если не указан.
#опциональный параметр
#тип - число
worker_sep_id = 1
#Пул для хранения Workers. Если не заполнить, будет выбран системой
#опциональный параметр
#тип - число
worker_sep_pool = "worker_pool"
#Перечень аргументов для cloud-init для виртуальных машин worker групп
#опциональный параметр
#тип - файл
#используется при создании и обновлении ресурса
cloud_init = file("initconfig.tftpl")
}
output "test_wg" {
value = decort_cb_k8s_wg.wg
}

View File

@@ -0,0 +1,14 @@
{
"users": [
{
"groups": "users, wheel",
"name": "user",
"plain_text_passwd": "examplePassword",
"primary_group": "user",
"ssh_authorized_keys": [
"ssh-rsa EXAMPLE%id_rsa.pub"
],
"sudo": "ALL=(ALL) NOPASSWD:ALL"
}
]
}

View File

@@ -0,0 +1,423 @@
/*
Пример использования
Работа с ресурсом kvmvm (compute)
Ресурс позволяет:
1. Создавать compute
2. Редактировать compute
3. Удалять compute
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_kvmvm" "comp" {
#имя compute
#обязательный параметр
#мб изменен
#тип - строка
name = "test-tf-compute-update-new"
#id resource group
#обязательный параметр
#тип - число
rg_id = 1111
#тип драйвера для compute
#обязательный параметр
#тип - строка
driver = "KVM_X86"
#число cpu
#обязательный параметр
#тип - число
cpu = 1
#кол-во оперативной памяти, МБ
#обязательный параметр
#тип - число
ram = 2048
#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"
#stack id
#опциональный параметр
#тип - число
stack_id = 1
#id образа CD-ROM для загрузки
#используется при изменении ресурса, при повторном старте вм
#опциональный параметр
#тип - число
alt_boot_id = 1
#Создание и добавление диска дял 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]
#Управление XML виртуальной машины
#опциональный параметр
#тип - строка (json-encoded)
custom_fields = "{`key`:`value`}"
#Описание необходимости выполнения действия
#опциональный параметр
#тип - строка
reason = "need"
#Присоеденения сетей и удаление сетей в компьюте
#опциональный параметр
#тип - блок
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 = "some@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
#id stack для добавления компьюта на этот стэк
#опциональный параметр
#тип - число
target_stack_id = 1
#Флаг для принужительного добавления компьюта на стэк
#опциональный параметр
#тип - булев
force_pin = true
#Флаг доступности компьюта для проведения с ним операций
#опциональный параметр
#тип - булев
enabled = true
#pause/resume компьюта
#опциональный параметр
#тип - булев
pause = true
#сделать компьют заново
#опциональный параметр
#тип - булев
reset = true
#восстановить удаленный компьют из корзины
#опциональный параметр
#тип - булев
restore = true
#флаг для редеплоя компьюта
#опциональный параметр
#тип - булев
auto_start = true
#флаг для редеплоя компьюта
#опциональный параметр
#тип - булев
force_stop = true
#поле для редеплоя компьюта
#опциональный параметр
#тип - строка
data_disks = "KEEP"
#запуск/стоп компьюта
#опциональный параметр
#тип - булев
started = true
#detach диска при удалении компьюта
#опциональный параметр
#тип - булев
detach_disks = true
#Флаг для удаления компьюта
#опциональный параметр
#тип - bool
permanently = false
}
output "test" {
value = decort_cb_kvmvm.comp
}

View File

@@ -0,0 +1,107 @@
/*
Пример использования
Ресурса 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
}

View File

@@ -0,0 +1,108 @@
/*
Пример использования
Ресурса load balancer backend
Ресурс позволяет:
1. Создавать backend
2. Редактировать backend
3. Удалять backend
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_backend" "lb" {
#id балансировщика нагрузок
#обязательный параметр
#тип - число
lb_id = 668
#имя бекенда для создания сервера
#обязательный параметр
#тип - строка
name = "testBackend"
#алгоритм балансировки
#опицональный параметр
#тип - строка
#по умолчанию - "roundrobin"
#доступные значения - "roundrobin", "static-rr", "leastconn"
#algorithm = "roundrobin"
#-------------------
#настройки для серверов по умолчанию
#-------------------
#интервал между проверками, в миллисекундах
#опицональный параметр
#тип - число
#по умолчанию - 5000
#inter = 5000
#интервал между проверками доступности сервера после восстановления, в миллисекундах
#опицональный параметр
#тип - число
#по умолчанию - 10000
#downinter = 1000
#кол-во проверок, которые сервер должен успешно пройти
#опицональный параметр
#тип - число
#по умолчанию - 2
#rise = 2
#кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
#опицональный параметр
#тип - число
#по умолчанию - 2
#fall = 2
#кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
#опицональный параметр
#тип - число
#по умолчанию - 60000
#slowstart = 60000
#максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
#опицональный параметр
#тип - число
#по умолчанию - 250
#maxconn = 250
#максимальное кол-во соединений в очереди серевера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
#опицональный параметр
#тип - число
#по умолчанию - 256
#maxqueue = 256
#вес сервера для балансировки
#опицональный параметр
#тип - число
#мин - 0
#макс - 255
#по умолчанию - 100
#weight = 100
}
output "test" {
value = decort_cb_lb_backend.lb
}

View File

@@ -0,0 +1,119 @@
/*
Пример использования
Ресурса load balancer backend server
Ресурс позволяет:
1. Создавать server
2. Редактировать server
3. Удалять server
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_backend_server" "lb" {
#id балансировщика нагрузок
#обязательный параметр
#тип - число
lb_id = 668
#имя бекенда для создания сервера
#обязательный параметр
#тип - строка
backend_name = "testBackend"
#имя сервера
#обязательный параметр
#тип - строка
name = "testServer"
#ip адрес сервера
#обязательный параметр
#тип - строка
address = "192.168.5.33"
#порт сервера
#обязательный параметр
#тип - число
port = 6553
#проверка доступности сервера
#опицональный параметр
#тип - строка
#по умолчанию - "enabled"
#доступные значения - "disabled", "enabled"
#check = "enabled"
#интервал между проверками, в миллисекундах
#опицональный параметр
#тип - число
#по умолчанию - 5000
#inter = 5000
#интервал между проверками доступности сервера после восстановления, в миллисекундах
#опицональный параметр
#тип - число
#по умолчанию - 10000
#downinter = 1000
#кол-во проверок, которые сервер должен успешно пройти
#опицональный параметр
#тип - число
#по умолчанию - 2
#rise = 2
#кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
#опицональный параметр
#тип - число
#по умолчанию - 2
#fall = 2
#кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
#опицональный параметр
#тип - число
#по умолчанию - 60000
#slowstart = 60000
#максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
#опицональный параметр
#тип - число
#по умолчанию - 250
#maxconn = 250
#максимальное кол-во соединений в очереди серевера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
#опицональный параметр
#тип - число
#по умолчанию - 256
#maxqueue = 256
#вес сервера для балансировки
#опицональный параметр
#тип - число
#мин - 0
#макс - 255
#по умолчанию - 100
#weight = 100
}
output "test" {
value = decort_cb_lb_backend_server.lb
}

View File

@@ -0,0 +1,51 @@
/*
Пример использования
Ресурса load balancer frontend
Ресурс позволяет:
1. Создавать frontend
2. Удалять frontend
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_frontend" "lb" {
#id балансировщика нагрузок
#обязательный параметр
#тип - число
lb_id = 668
#имя бекенда для создания фронтенда
#обязательный параметр
#тип - строка
backend_name = "testBackend"
#имя фронтенда
#обязательный параметр
#тип - строка
name = "testFrontend"
}
output "test" {
value = decort_cb_lb_frontend.lb
}

View File

@@ -0,0 +1,62 @@
/*
Пример использования
Ресурса load balancer frontend bind (привязка фронтенда балансировщика нагрузок)
Ресурс позволяет:
1. Создавать привязку
2. Редактировать привязку
3. Удалять привязку
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_frontend_bind" "lb" {
#id балансировщика нагрузок
#обязательный параметр
#тип - число
lb_id = 668
#имя фронтенда для создания привязки
#обязательный параметр
#тип - строка
frontend_name = "testFrontend"
#наименование привязки
#обязательный параметр
#тип - строка
name = "testBinding"
#адрес привязки фронтенда
#обязательный параметр
#тип - строка
address = "111.111.111.111"
#порт для привязки фронтенда
#обязательный параметр
#тип - число
port = 1111
}
output "test" {
value = decort_cb_lb_frontend_bind.lb
}

View File

@@ -0,0 +1,208 @@
/*
Пример использования
Ресурсов RG
Ресурс позволяет:
1. Создавать
2. Редактировать
3. Удалять
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_rg" "rg" {
#имя ресурсной группы
#обязательный параметр
#тип - строка
rg_name = "testing_rg_1"
#id аккаунта которому будет принадлежать ресурсная группа
#обязательный параметр
#тип - число
account_id = 123
#id сети
#обязательный параметр
#тип - число
gid = 1234
#лимиты ресурсов
#опциональные параметры
#тип - блок
#resource_limits {
#max number of cpu cores
#опциональный праметр при использовании блока
#тип - число
#cu_c = 12
#max size of aggregated vdisks in GB
#опциональный праметр при использовании блока
#тип - число
#cu_dm = 12
#max number of assigned public IPs
#опциональный праметр при использовании блока
#тип - число
#cu_i = 12
#max size of memory in MB
#опциональный праметр при использовании блока
#тип - число
#cu_m = 12
#max sent/received network transfer peering
#опциональный праметр при использовании блока
#тип - число
#cu_np = 12
#}
#имя владельца ресурсной группы
#опциональный параметр
#тип - строка
#owner = "owner name"
#тип сети по умолчанию для этой ресурсной группы.
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети.
#Допустимые значения: PRIVATE, PUBLIC, NONE.
#необязательный параметр
#тип - строка
#def_net_type = "NONE"
#ip cidr частной сети, если сеть по умолчанию PRIVATE
#необязательный параметр
#тип - строка
#ipcidr = "1.1.1.1"
#описание
#необязательный параметр
#тип - строка
#description = "qwerty"
#id внешней сети
#необязательный параметр
#тип - число
#ext_net_id = 123
#ip внешней сети
#необязательный параметр
#тип - строка
#ext_ip = "1.1.1.1"
#причина выполнения
#необязательный параметр
#тип - строка
#reason = "TEST"
#зарегистрировать компьюты в регистрационной системе
#необязательный параметр
#тип - булев
#register_computes = true
#список названий pools
#необязательный параметр
#тип - массив строк
#uniq_pools = ["sep1_poolName1", "sep2_poolName2"]
#блок для предоставления прав на ресурсную группу
#необязательный параметр
#тип - блок
access {
#имя юзера предоставляемому права
#обязательный праметр при использовании блока
#тип - строка
user = "kasim_baybikov_1@decs3o"
#тип прав
#обязательный параметр
#тип - строка
#разрешенные значения: "R", "RCX" or "ARCXDU"
right = "RCX"
#причина запроса
#необязательный параметр
#тип - строка
reason = "test"
}
#Установить сеть по умолчанию
#необязательный параметр
#тип - блок
#при добавлении блока, удалять его нельзя
def_net {
#тип сети
#обязательный параметр при использовании блока
#тип - строка
net_type = "PUBLIC"
#id сети
#идентификатор сегмента сети. Если net_type — PUBLIC, а net_id — 0,
#то будет выбран сегмент внешней сети по умолчанию. Если net_type
#имеет значение PRIVATE и net_id=0, будет выбран первый vins, определенный для этой ресурсной группы.
#В противном случае net_id идентифицирует либо существующий сегмент внешней сети, либо vins.
#необязательный параметр
#тип - число
net_id = 1234
#причина выполнения
#необязательный параметр
#тип - строка
reason = "TEST"
}
#может ли запуститься ВМ, если ресурсов CPU недостаточно
#необязательный параметр
#Допустимые значения: strict, loose.
#тип - строка
cpu_allocation_parameter = "loose"
#CPU allocation ratio
#необязательный параметр
#one pCPU = ratio*vCPU (zero or positive value)
#тип - число
cpu_allocation_ratio = 1
#флаг доступности ресурсной группы
#необязательный параметр
#тип - булевый
enable = true
#флаг для восстановления удаленной ресурсной группы
#необязательный параметр
#тип - булевый
#restore = false
#флаг для принудительного удаления ресурсной группы
#необязательный параметр
#тип - булевый
#перед удалением следует перевести ресурсную группу в статус disabled, выставив enable = false
force = true
#флаг для моментального удаления ресурсной группы
#необязательный параметр
#тип - булевый
permanently = true
}
output "output" {
value = decort_cb_rg.rg
}

View File

@@ -0,0 +1,242 @@
/*
Пример использования
Ресурса vins
Ресурс позволяет:
1. Создавать vins
2. Удалять vins
3. Восстанвливать vins
4. Добавлять и убирать подключение к внешней сети
5. Резервировать и освобождать ip для vins
6. Добавлять и удалять natrule
7. Перезапускать и редеплоить vnfdev
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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://mr4.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_cb_vins" "vins" {
# Параметры для создания vins
#обязательный параметр
#имя создаваемого ресурса
#тип - строка
name = "Test_name"
#опциональный параметр
#id аккаунта для создаения ресурса
#тип - число
#внимание, для создания ресурса обязательно должен быть указан или rg_id, или account_id
account_id = 2023
#опциональный параметр
#id ресурсной группы для создаения ресурса
#тип - число
#внимание, для создания ресурса обязательно должен быть указан или rg_id, или account_id
rg_id = 10101
#опциональный параметр
#id внешней сети для подключения к ней ресурса
#тип - число
#ext_net_id = 2222
#опциональный параметр
#ip внешней сети для подключения к нему ресурса
#тип - строка
#ext_ip = "1.1.1.1"
#опциональный параметр
#private network IP CIDR
#тип - строка
#ipcidr = "192.168.0.1"
#опциональный параметр
#количество зарезервированных адресов на момент создания
#тип - число
#значение по умолчанию 32
#pre_reservations_num = 2
#опциональный параметр
#grid (platform) ID
#тип - число
#gid = 2002
#опциональный параметр
#Description
#тип - строка
#description = "Description"
#опциональный параметр
#Причина запроса
#тип - строка
#reason = "test"
#опциональный параметр
#блок для указания списка routes
#тип - блок
#routes = [{
#опциональный параметр
#destination network
#тип - строка
#destination = "DHCP"
#опциональный параметр
#destination network mask in 255.255.255.255 format
#тип - строка
#netmask = "192.168.5.5"
#опциональный параметр
#next hop host, IP address from ViNS ID free IP pool
#тип - строка
#gateway = "192.168.5.5"
#}]
# Default qos
#опциональный параметр
#блок для указания default_qos
#тип - блок
#default_qos = {
#опциональный параметр
#ingress rate
#тип - число
#in_rate = 1
#опциональный параметр
#ingress burst
#тип - число
#in_burst = 1
#опциональный параметр
#egress rate
#тип - число
#e_rate = 1
#}
# Enable, delete parameters
#опциональный параметр
#ручное подключение и отключение ресурса
#тип - булев тип
#enable = true
#опциональный параметр
#удаление навсегда
#тип - булев тип
#permanently = true
#опциональный параметр
#удаляет за собой все зависимые ресурсы
#тип - булев тип
#force = true
# IP release, IP reserve parameters
#опциональный параметр
#блок для резервирования ip
#тип - блок
#ip {
#обязательный параметр
#тип подключения
#тип - строка
# type = "DHCP"
#опциональный параметр
#ip который необходимо зарезервировать
#тип - строка
#ip_addr = "192.168.5.5"
#опциональный параметр
#mac который необходимо зарезервировать
#тип - строка
#mac = "ff:ff:ff:ff:ff:ff"
#опциональный параметр
#compute_id, ассоциируемый с типом DHCP
#тип - число
#compute_id = 1234
#опциональный параметр
#причина запроса
#тип - строка
#reason = "one more reason"
#}
# Добавление и удаление NAT Rules
#опциональный параметр
#блок для добавления natRule
#тип - блок
#nat_rule {
#обязательный параметр
#ip внутренний
#тип - строка
# int_ip = "192.168.0.28"
#обязательный параметр
#внутренний порт
#тип - число
# int_port = 80
#обязательный параметр
#начало диапазона внешних портов
#тип - число
# ext_port_start = 8001
#опциональный параметр
#конец диапазона внешних портов
#тип - число
#ext_port_end = 8001
#опциональный параметр
#протокол natRule: разрешенные значения "tcp", "udp"
#тип - строка
#proto = "tcp"
#}
# vnf dev start, stop, restart, reset, redeploy parameters
#опциональный параметр
#true: старт vnfDev; false: стоп vnfDev
#тип - булев тип
#vnfdev_start = true
#опциональный параметр
#перезапуск vnfDev
#тип - булев тип
#vnfdev_restart = true
#опциональный параметр
#ресет vnfDev
#тип - булев тип
#vnfdev_reset = true
#опциональный параметр
#редеплой vnfDev
#тип - булев тип
#vnfdev_redeploy = true
}
output "test" {
value = decort_cb_vins.vins
}

View File

@@ -0,0 +1,63 @@
/*
Пример использования
Ресурса vins static routes
Ресурс позволяет:
1. Создавать static routes
2. Удалять static routes
3. Предоставлять доступ виртуальным машинам к static routes
4. Удалять доступ виртуальным машинам к 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_cb_vins_static_route" "sr" {
#id Vins
#обязательный параметр
#тип - число
vins_id = 385
#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_cb_vins_static_route.sr
}