This commit is contained in:
2024-11-12 13:41:38 +03:00
parent 040af43607
commit 36879efd58
517 changed files with 37877 additions and 1900 deletions

View File

@@ -127,12 +127,6 @@ resource "decort_cb_account" "acc" {
#ARCXDU - админ
access_type = "R"
#рекурсивное удаление пользователя из всех ресурсов аккаунтов
#опциональный параметр
#тип - булев
#по-умолчанию - false
#применяется при удалении пользователя из аккаунта
recursive_delete = true
}
*/

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получения списка аудитов в виде архива csv файлов
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_audits_export_to_file" "audit" {
#путь, где будет создан архив, если не указан, создается в директории с main.tf с именем "audits.tar.gz"
#обязательный параметр
#тип - строка
file_path = "abcdefg.tar.gz"
}
output "test" {
value = data.decort_cb_audits_export_to_file.audit
}

View File

@@ -41,7 +41,7 @@ resource "decort_cb_disk" "acl" {
#тип - целое число
gid = 212
#название диска диска
#название диска
#обязательный параметр
#тип - строка
disk_name = "super-disk-re"
@@ -101,11 +101,6 @@ resource "decort_cb_disk" "acl" {
#тип - булев
#permanently = true
#причина удаления диска
#опциональный параметр
#тип - строка
#reason = "delete"
#флаг поделиться диском
#опциональный параметр
#тип - булев

View File

@@ -1,84 +0,0 @@
/*
Пример использования
Ресурс репликации диска
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_cb_disk_replication" "dr" {
#ID диска из которого будет создана реплика
#обязательный параметр
#тип - целое число
disk_id = 20100
#Имя реплики диска
#обязательный параметр
#тип - строка
disk_name = "test"
#sep id
#обязательный параметр
#тип - целое число
sep_id = 1
#название pool
#обязательный параметр
#тип - строка
pool_name = "some"
#флаг паузы
#опциональный параметр
#тип - булев
#pause = false
#флаг для изменения ролей дисков
#опциональный параметр
#тип - булев
#reverse = false
#флаг для запуска связи между диском и репликой
#опциональный параметр
#тип - булев
#start = false
#флаг для отключения диска от ВМ при удалении
#опциональный параметр
#тип - булев
#detach = false
#флаг для удаления реплики диска безвозвратно
#опциональный параметр
#тип - булев
#permanently = false
#описание причины удаления
#опциональный параметр
#тип - строка
#reason = "some"
}
output "test" {
value = decort_cb_disk_replication.dr
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение данных диска
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_dpdknet" "dpdk" {
#фильтр по id DPDK сети
#обязательный параметр
#тип - целое число
dpdk_id = 49304
}
output "test" {
value = data.decort_cb_dpdknet.dpdk
}

View File

@@ -0,0 +1,89 @@
/*
Пример использования
Получение списка доступных дисков
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_dpdknet_list" "dl" {
#фильтр по id DPDK сети
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по grid ID
#опциональный параметр
#тип - целое число
#gid = 100
#фильтр по имени сети
#опциональный параметр
#тип - строка
#name = "test_dpdk"
#фильтр по описания
#опциональный параметр
#тип - строка
#desc = "user"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по доступным аккаунтам
#опциональный параметр
#тип - массив чисел
#account_access = [11111,22222]
#фильтр по доступным ресурсным группам
#опциональный параметр
#тип - массив чисел
#rg_access = [11111,22222]
#фильтр по compute IDs
#опциональный параметр
#тип - массив чисел
#compute_ids = [11111,22222]
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#кол-во страниц для вывода
#опциональный параметр
#тип - целое число
#page = 1
#размер страницы
#опциональный параметр
#тип - целое число
#size = 1
}
output "test" {
value = data.decort_cb_dpdknet_list.dl
}

View File

@@ -0,0 +1,78 @@
/*
Пример использования
Ресурса диска:
1. Создание ресурса
2. Изменение ресурса
3. Удаление ресурса
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_cb_dpdknet" "dpdk" {
#название
#обязательный параметр
#тип - строка
name = "dpdk-name"
#gid
#обязательный параметр
#тип - целое число
gid = 212
#vlanid для тегирования траффика на интерфейсе для компьюта
#обязательный параметр
#тип - целое число
vlan_id = 123
#OVS bridge в котором будут создаваться интерфейсы для компьютов, созданные из этой сети
#обязательный параметр
#тип - строка
ovs_bridge = "OVSBridge"
#описание сети
#опциональный параметр
#тип - строка
#desc = "description"
#список id аккаунтов, которым может быть выделена сеть в эксклюзивное пользование
#опциональный параметр
#тип - массив целых чисел
#account_access = [10,11]
#список id ресурсных групп, которым может быть выделена сеть в эксклюзивное пользование
#опциональный параметр
#тип - массив целых чисел
#rg_access = [10,11]
#флаг доступности сети для проведения с ней операций
#опциональный параметр
#по умолчанию - false
#тип - булев
#enabled = true
}
output "test" {
value = decort_cb_dpdknet.dpdk
}

View File

@@ -0,0 +1,39 @@
/*
Пример использования
Получение настроек grid (платформы) по id
*/
#Расскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
data "decort_cb_grid_get_settings" "gs" {
#id grid для получения информации
#обязательный параметр
#тип - целое число
grid_id = 215
}
output "test" {
value = data.decort_cb_grid_get_settings.gs
}

View File

@@ -75,17 +75,17 @@ data "decort_cb_image_list" "il" {
#фильтр по доступу
#опциональный параметр
#тип - булев
#public = "true"
#public = true
#фильтр по hot_resize
#опциональный параметр
#тип - булев
#hot_resize = "true"
#hot_resize = true
#фильтр по bootable
#опциональный параметр
#тип - булев
#bootable = "true"
#bootable = true
#сортировка по одному из поддерживаемых полей
#опциональный параметр
@@ -105,6 +105,11 @@ data "decort_cb_image_list" "il" {
#тип - целое число
#size = 3
#фильтр по enabled
#опциональный параметр
#тип - булев
#enabled = true
}
output "test" {

View File

@@ -39,11 +39,6 @@ resource "decort_delete_images" "my_images" {
#по-умолчанию - false
#тип - булев
permanently = true
#причина удаления
#обязательный параметр
#тип - строка
reason = "test delete"
}
output "test" {

View File

@@ -155,16 +155,6 @@ resource "decort_cb_image" "my_image" {
#для удаления всех доступных аккаунтов, необходимо передать пустой массив
#accounts = [9, 5]
#мгновенное удаление
#опциональный параметр, можно использовать перед удалением
#тип - булев
#permanently = true
#причина удаления
#опциональный параметр, можно использовать перед удалением
#тип - строка
#reason = "test"
#наименование сетевого интерфейса для вашего компьютера с Linux, eth - встроенный, ens - pci слот
#опциональный параметр
#тип - строка

View File

@@ -48,7 +48,7 @@ resource "decort_cb_cdrom_image" "my_image" {
gid = 212
#драйвера
#обязательный параметр
#опциональный параметр
#тип - массив строк
#возможные варианты - ["KVM_X86", "SVA_KVM_X86"], ["KVM_X86"], ["SVA_KVM_X86"]
drivers = ["KVM_X86", "SVA_KVM_X86"]
@@ -116,11 +116,6 @@ resource "decort_cb_cdrom_image" "my_image" {
#опциональный параметр, используется на уже созданном ресурсе
#тип - булев
#bootable = true
#мгновенное удаление
#опциональный параметр, можно использовать перед удалением
#тип - булев
#permanently = true
}
output "test" {

View File

@@ -133,16 +133,6 @@ resource "decort_cb_image_from_blank_compute" "my_image" {
#для удаления всех доступных аккаунтов, необходимо передать пустой массив
#accounts = [9, 5]
#мгновенное удаление
#опциональный параметр, можно использовать перед удалением
#тип - булев
#permanently = true
#причина удаления
#опциональный параметр, можно использовать перед удалением
#тип - строка
#reason = "test"
#наименование сетевого интерфейса для вашего компьютера с Linux, eth - встроенный, ens - pci слот
#используется для обновления образа
#опциональный параметр

View File

@@ -59,10 +59,16 @@ resource "decort_cb_image_from_platform_disk" "my_image" {
#архитектура образа
#используется для создания образа
#обязательный параметр
#возможные значения - X86_64 or PPC64_LE
#возможные значения - X86_64
#тип - строка
architecture = "X86_64"
#драйверы компьютов, подходящие для данного образа
#используется для создания образа
#обязательный параметр
#тип - массив строк
drivers = ["KVM_X86"]
#имя пользователя для образа
#используется для обновления и создания образа
#опциональный параметр
@@ -93,12 +99,6 @@ resource "decort_cb_image_from_platform_disk" "my_image" {
#тип - строка
#pool_name = "pool"
#драйверы компьютов, подходящие для данного образа
#используется для создания образа
#опциональный параметр
#тип - массив строк
#drivers = ["KVM_X86"]
#поддержка hot resize
#используется для обновления и создания образа
#опциональный параметр
@@ -146,16 +146,6 @@ resource "decort_cb_image_from_platform_disk" "my_image" {
#для удаления всех доступных аккаунтов, необходимо передать пустой массив
#accounts = [9, 5]
#мгновенное удаление
#опциональный параметр, можно использовать перед удалением
#тип - булев
#permanently = true
#причина удаления
#опциональный параметр, можно использовать перед удалением
#тип - строка
#reason = "test"
#наименование сетевого интерфейса для вашего компьютера с Linux, eth - встроенный, ens - pci слот
#используется для обновления образа
#опциональный параметр

View File

@@ -95,18 +95,6 @@ resource "decort_cb_virtual_image" "my_image" {
#для удаления всех доступных стаков, необходимо передать пустой массив
#тип - массив целых чисел
#enabled_stacks = [9]
#мгновенное удаление
#опциональный параметр
#можно использовать перед удалением
#тип - булев
#permanently = true
#причина удаления
#опциональный параметр
#можно использовать перед удалением
#тип - строка
#reason = "test"
}

View File

@@ -175,6 +175,11 @@ resource "decort_cb_k8s_cp" "cp" {
#тип - файл с форматом в виде .crt
oidc_cert = file("ca.crt")
#тип эмулируемой системы
#опциональный параметр
#тип - строка
chipset = "i440fx"
#пользовательские значения sysctl для LB
#опциональный параметр
#тип - массив мап

View File

@@ -94,6 +94,11 @@ resource "decort_cb_k8s_wg" "wg" {
#используется при создании и обновлении ресурса
cloud_init = file("initconfig.tftpl")
#тип эмулируемой системы
#опциональный параметр
#тип - строка
chipset = "i440fx"
}
output "test_wg" {

View File

@@ -33,11 +33,6 @@ data "decort_cb_kvmvm" "comp" {
#тип - целое число
compute_id = 11346
#прична запроса
#опциональный параметр
#тип - строка
reason = "test"
}
output "test" {

View File

@@ -32,11 +32,6 @@ data "decort_cb_kvmvm_get_audits" "kvmvm_get_audits" {
#тип - целое число
compute_id = 10154
#причина запроса
#опциональный параметр
#тип - строка
#reason = "test"
}
output "output" {

View File

@@ -32,11 +32,6 @@ data "decort_cb_kvmvm_pfw_list" "kvmvm_pfw_list" {
#тип - целое число
compute_id = 48
#причина запроса
#опциональный параметр
#тип - строка
reason = "test"
}
output "output" {

View File

@@ -57,6 +57,11 @@ resource "decort_cb_kvmvm" "comp" {
#тип - целое число
ram = 2048
#тип эмулируемой системы
#опциональный параметр
#тип - строка
#chipset = "i440fx"
#id образа диска для создания compute
#опциональный параметр
#тип - целое число
@@ -84,7 +89,7 @@ resource "decort_cb_kvmvm" "comp" {
#конфигурация cloud init
#опциональный параметр
#тип - файл в формате JSON/YAML
#тип - файл в формате JSON
#cloud_init = file("initconfig.tftpl")
#описание compute
@@ -268,16 +273,11 @@ resource "decort_cb_kvmvm" "comp" {
#тип - строка (json-encoded)
#custom_fields = "{`key`:`value`}"
#описание необходимости выполнения действия
#опциональный параметр
#тип - строка
#reason = "need"
#присоединения сетей и удаление сетей в компьюте
#опциональный параметр
#тип - блок
#network {
#тип сети VINS/EXTNET (для любого драйвера) и VFNIC (для KVM_X86)
#тип сети VINS/EXTNET/DPDK (для любого драйвера) и VFNIC (для KVM_X86)
#обязательный параметр
#тип - строка
#net_type = "VINS"
@@ -366,7 +366,13 @@ resource "decort_cb_kvmvm" "comp" {
#label = "label1"
#}
#Rollback на нужный снапшот
#флаг для удаления снапшотов в асинхронном режиме
#опциональный параметр
#дефолтное значение - false
#тип - булев
#snapshot_delete_async = true
#rollback на нужный снапшот
#опциональный параметр
#не имеет смысла при отсутсвии снапшотов
#тип - блок
@@ -464,10 +470,55 @@ resource "decort_cb_kvmvm" "comp" {
#тип - булев
#detach_disks = true
#Ффлаг для удаления компьюта
#флаг для удаления компьюта
#опциональный параметр
#тип - булев
#permanently = false
#конфигурация параметров libvirt virtio интерфейса
#опциональный параметр
#добавление блока возможно только при выключенной виртуальной машине,
#удаление блока удалит настройки только локально, состояние на платформе не изменится
#тип - блок
#libvirt_settings {
#mac адреc
#обязательный параметр
#тип - строка
#mac = "52:54:00:00:19:e1"
#tx mode
#опциональный параметр
#возможные значения - 'iothread', 'timer' или 'selected by hypervisor'
#тип - строка
#txmode = "iothread"
#IO event
#опциональный параметр
#возможные значения - 'on', 'off' or 'selected by hypervisor'
#тип - строка
#ioeventfd = "on"
#event ID
#опциональный параметр
#возможные значения - 'on', 'off' or 'selected by hypervisor'
#тип - строка
#event_idx = "off"
#количество очередей
#опциональный параметр
#тип - целое число
#queues = "4"
#длина очереди RX
#опциональный параметр
#тип - целое число
#rx_queue_size = "1024"
#длина очереди TX
#опциональный параметр
#тип - целое число
#tx_queue_size = "1024"
#}
}
output "test" {

View File

@@ -32,11 +32,6 @@ data "decort_cb_rg" "rg" {
#обязательный параметр
#тип - целое число
rg_id = 1022
#причина для выполнения действия
#необязятельный параметр
#тип - строка
reason = "TEST"
}
output "output" {

View File

@@ -32,11 +32,6 @@ data "decort_cb_rg_usage" "rg_usage" {
#обязательный параметр
#тип - целое число
rg_id = 123
#причина для действия
#необязательный параметр
#тип - строка
#reason = "TEST"
}
output "output" {

View File

@@ -85,6 +85,7 @@ resource "decort_cb_rg" "rg" {
#виртуальные машины, созданные в этой RG, по умолчанию будут подключены к этой сети.
#Допустимые значения: PRIVATE, PUBLIC, NONE.
#необязательный параметр
#по умолчанию: PRIVATE
#тип - строка
#def_net_type = "NONE"
@@ -108,11 +109,6 @@ resource "decort_cb_rg" "rg" {
#тип - строка
#ext_ip = "1.1.1.1"
#причина выполнения
#необязательный параметр
#тип - строка
#reason = "TEST"
#зарегистрировать компьюты в регистрационной системе
#необязательный параметр
#тип - булев
@@ -138,10 +134,6 @@ resource "decort_cb_rg" "rg" {
#разрешенные значения: "R", "RCX" or "ARCXDU"
right = "RCX"
#причина запроса
#необязательный параметр
#тип - строка
reason = "test"
}
#установить сеть по умолчанию
@@ -162,11 +154,6 @@ resource "decort_cb_rg" "rg" {
#необязательный параметр
#тип - целое число
net_id = 1234
#причина выполнения
#необязательный параметр
#тип - строка
reason = "TEST"
}
#может ли запуститься ВМ, если ресурсов CPU недостаточно

View File

@@ -31,11 +31,6 @@ data "decort_cb_vins" "vins" {
#обязательный параметр
#тип - целое число
vins_id = 10101
#причина запроса
#опциональный параметр
#тип - строка
#reason = "report"
}
output "test" {

View File

@@ -52,6 +52,11 @@ data "decort_cb_vins_list_deleted" "vins_list_deleted" {
#тип - строка
#ext_ip = "test"
#фильтр по VNF Device id
#опциональный параметр
#тип - целое число
#vnf_dev_id = 14
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка

View File

@@ -31,11 +31,6 @@ data "decort_cb_vins_nat_rule_list" "vins_nat_rule_list" {
#обязательный параметр
#тип - целое число
vins_id = 10101
#причина вызова
#опциональный параметр
#тип - строка
#reason = "test"
}
output "test" {

View File

@@ -83,11 +83,6 @@ resource "decort_cb_vins" "vins" {
#тип - строка
#description = "Description"
#причина запроса
#опциональный параметр
#тип - строка
#reason = "test"
#блок для указания списка routes
#опциональный параметр
#тип - список routes
@@ -167,11 +162,6 @@ resource "decort_cb_vins" "vins" {
#опциональный параметр
#тип - целое число
#compute_id = 1234
#причина запроса
#опциональный параметр
#тип - строка
#reason = "one more reason"
#}
#блок для добавления natRule