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

View File

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

View File

@@ -0,0 +1,122 @@
/*
Пример использования
Получение списка доступных образов
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через 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_image_list" "il" {
#фильтр по id sep
#опциональный параметр
#тип - целое число
#sep_id = 1
#фильтр по id образа
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени образа
#опциональный параметр
#тип - строка
#name = "test"
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по архитектуре
#опциональный параметр
#тип - строка
#architecture = "x86_64"
#фильтр по типу образа
#опциональный параметр
#тип - массив строк
#type_image = ["linux", "windows"]
#фильтр по размеру образа
#опциональный параметр
#тип - целое число
#image_size = 100
#фильтр по имени SEP
#опциональный параметр
#тип - строка
#sep_name = "test"
#фильтр по имени Pool
#опциональный параметр
#тип - строка
#pool = "test"
#фильтр по доступу
#опциональный параметр
#тип - булев
#public = true
#фильтр по hot_resize
#опциональный параметр
#тип - булев
#hot_resize = true
#фильтр по bootable
#опциональный параметр
#тип - булев
#bootable = true
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
#фильтр по enabled
#опциональный параметр
#тип - булев
#enabled = true
#фильтр по id политики хранения
#опциональный параметр
#тип - целое число
#storage_policy_id = 6
}
output "test" {
value = data.decort_image_list.il
}

View File

@@ -0,0 +1,127 @@
/*
Пример использования
Работа с образом
Ресурс позволяет:
1. Управлять образом
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_image" "img" {
#наименование образа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "image_name"
#тип образа (linux, windows и др.)
#обязательный параметр
#тип - строка
#используется при создании
type = "linux"
#прямая ссылка на образ
#обязательный параметр
#тип - строка
#используется при создании
url = "https://dl-cdn.alpinelinux.org/alpine/v3.17/releases/x86_64/alpine-virt-3.17.3-x86_64.iso"
#тип загрузчика (bios/uefi)
#обязательный параметр
#тип - строка
#используется при создании
boot_type = "bios"
#id аккаунта
#обязательный параметр
#тип - целое число
#используется при создании
account_id = 138
#id политики хранения
#обязательный параметр
#тип - целое число
#используется при создании
storage_policy_id = 111
#поддержка hot resize
#опциональный параметр
#тип - булев
#используется при создании
#hot_resize = true
#юзернейм для образа
#опциональный параметр
#тип - целое число
#используется при создании
#username = "userx"
#пароль для образа
#опциональный параметр
#тип - строка
#используется при создании
#password = "passx"
#юзернейм для загрузки binary media
#опциональный параметр
#тип - строка
#используется при создании
#username_dl = "userxdl"
#пароль для загрузки binary media
#опциональный параметр
#тип - строка
#используется при создании
#password_dl = "passxdl"
#storage endpoint provider ID
#опциональный параметр
#тип - целое число
#используется при создании
#sep_id = 1
#pool для образа
#опциональный параметр
#тип - строка
#используется при создании
#pool_name = "pool"
#наименование сетевого интерфейса для вашего компьютера с Linux
#eth - встроенный, ens - pci слот
#опциональный параметр
#тип - строка
#используется при создании
#network_interface_naming = "ens"
#позволяет создавать образ в синхронном режиме
#опциональный параметр
#тип - булев
#используется при создании
#по умолчанию - false
#sync_mode = true
}
output "img_out" {
value = decort_image.img
}

View File

@@ -0,0 +1,103 @@
/*
Ресурс образа из компьюта, созданного как blank позволяет:
1. Создавать
2. Редактировать
3. Удалять ресурс
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_image_from_blank_compute" "img" {
#id виртуальной машины, созданной как blank
#обязательный параметр
#тип - целое число
#используется при создании
compute_id = 1234
#наименование образа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "image_name"
#тип загрузчика (bios/uefi)
#обязательный параметр
#тип - строка
#используется при создании
boot_type = "bios"
#тип образа (linux, windows и др.)
#обязательный параметр
#тип - строка
#используется при создании
type = "linux"
#id политики хранения
#обязательный параметр
#тип - целое число
#используется при создании
storage_policy_id = 111
#юзернейм для образа
#опциональный параметр
#тип - строка
#используется при создании
#username = "userx"
#пароль для образа
#опциональный параметр
#тип - строка
#используется при создании
#password = "passx"
#id аккаунта
#опциональный параметр
#тип - целое число
#используется при создании
#account_id = 138
#pool для образа
#опциональный параметр
#тип - строка
#используется при создании
#pool_name = "pool"
#поддержка hot resize
#опциональный параметр
#тип - булев
#используется при создании
#hot_resize = true
#флаг для создания образа в асинхронном режиме
#опциональный параметр
#по умолчанию - false
#тип - булев
#используется при создании
#async_mode = true
}
output "img_out" {
value = decort_image_from_blank_compute.img
}

View File

@@ -0,0 +1,111 @@
/*
Ресурс образа из платформенного диска позволяет:
1. Создавать
2. Редактировать
3. Удалять ресурс
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_image_from_platform_disk" "img" {
#id диска
#обязательный параметр
#тип - целое число
#используется при создании
disk_id = 1234
#наименование образа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "image_name"
#тип загрузчика
#обязательный параметр
#возможные значения - bios, uefi
#тип - строка
#используется при создании
boot_type = "bios"
#тип образа (linux, windows и др.)
#обязательный параметр
#тип - строка
#используется при создании
type = "linux"
#драйверы компьютов, подходящие для данного образа
#опциональный параметр
#тип - массив строк
#используется при создании
#drivers = ["KVM_X86"]
#имя пользователя для образа
#опциональный параметр
#тип - строка
#используется при создании
#username = "userx"
#пароль для образа
#опциональный параметр
#тип - строка
#используется при создании
#password = "passx"
#id аккаунта
#опциональный параметр
#тип - целое число
#используется при создании
#account_id = 138
#pool для образа
#опциональный параметр
#тип - строка
#используется при создании
#pool_name = "pool"
#поддержка hot resize
#опциональный параметр
#тип - булев
#используется при создании
#hot_resize = true
#флаг загрузочного образа
#опциональный параметр
#по умолчанию - true
#тип - булев
#используется при создании
#bootable = true
#флаг для создания образа в асинхронном режиме
#опциональный параметр
#по умолчанию - false
#тип - булев
#используется при создании
#async_mode = true
}
output "img_out" {
value = decort_image_from_platform_disk.img
}

View File

@@ -0,0 +1,56 @@
/*
Пример использования
Управления виртуальным образом
Ресурс позволяет:
1. Создавать image virtual
2. Изменять image virtual
2. Удалять image virtual
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
decort = {
source = "basis/decort/decort"
version = "<VERSION>"
}
}
}
*/
provider "decort" {
authenticator = "decs3o"
#controller_url = <DECORT_CONTROLLER_URL>
controller_url = "https://ds1.digitalenergy.online"
#oauth2_url = <DECORT_SSO_URL>
oauth2_url = "https://sso.digitalenergy.online"
allow_unverified_ssl = true
}
resource "decort_image_virtual" "iv" {
#имя виртуального образа
#обязательный параметр
#тип - строка
#используется при создании и обновлении
name = "iv-name"
#id реального образа, на который будет ссылаться виртуальный
#обязательный параметр
#тип - целое число
#используется при создании и обновлении
link_to = 123
#id аккаунта
#обязательный параметр
#тип - целое число
#используется при создании
account_id = 123
}
output "sr" {
value = decort_image_virtual.iv
}