This commit is contained in:
asteam
2024-07-25 14:33:38 +03:00
commit 6f40af6a5f
946 changed files with 98335 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk" "disk" {
#id диска
#обязательный параметр
#тип - целое число
disk_id = 49304
}
output "test" {
value = data.dynamix_disk.disk
}

View File

@@ -0,0 +1,100 @@
/*
Пример использования
Получение списка доступных дисков
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_list" "dl" {
#фильтр по id диска
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени диска
#опциональный параметр
#тип - строка
#name = "data_disk"
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "user"
#фильтр по максимальному размеру диска
#опциональный параметр
#тип - целое число
#disk_max_size = 100
#фильтр по статусу
#опциональный параметр
#тип - строка
#status = "ENABLED"
#фильтр по доступности иным пользователям
#опциональный параметр
#тип - булев
#shared = false
#id аккаунта для получения списка дисков
#опциональный параметр
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#id SEP для получения списка дисков
#опциональный параметр
#тип - целое число
#sep_id = 11111
#фильтр по имени pool
#опциональный параметр
#тип - строка
#pool_name = "test"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#кол-во страниц для вывода
#опицональный параметр
#тип - целое число
#page = 1
#размер страницы
#опицональный параметр
#тип - целое число
#size = 1
}
output "test" {
value = data.dynamix_disk_list.dl
}

View File

@@ -0,0 +1,85 @@
/*
Пример использования
Получение списка дисков со статусом DELETED
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_list_deleted" "dld" {
#фильтр по id диска
#опциональный параметр
#тип - целое число
#by_id = 100
#фильтр по имени диска
#опциональный параметр
#тип - строка
#name = "data_disk"
#фильтр по имени аккаунта
#опциональный параметр
#тип - строка
#account_name = "user"
#фильтр по максимальному размеру диска
#опциональный параметр
#тип - целое число
#disk_max_size = 100
#фильтр по доступности иным пользователям
#опциональный параметр
#тип - булев
#shared = false
#id аккаунта для получения списка дисков
#опциональный параметр
#тип - целое число
#account_id = 11111
#тип диска
#опциональный параметр
#тип - строка
#возможные типы: "b" - boot_disk, "d" - data_disk
#type = "d"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#кол-во страниц для вывода
#опицональный параметр
#тип - целое число
#page = 1
#размер страницы
#опицональный параметр
#тип - целое число
#size = 1
}
output "test" {
value = data.dynamix_disk_list_deleted.dld
}

View File

@@ -0,0 +1,51 @@
/*
Пример использования
Получение списка типов дисков
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_list_types" "dlt" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.dynamix_disk_list_types.dlt
}

View File

@@ -0,0 +1,51 @@
/*
Пример использования
Получение списка типов дисков, но детально
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_list_types_detailed" "dltd" {
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.dynamix_disk_list_types_detailed.dltd
}

View File

@@ -0,0 +1,92 @@
/*
Пример использования
Получение списка доступных неприсоединенных дисков
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_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_name = "test"
#сортировка по одному из поддерживаемых полей
#опциональный параметр
#тип - строка
#формат - "+поле" по возрастанию / "-поле" по убыванию
#sort_by = "+name"
#номер страницы для отображения
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#page = 2
#размер страницы
#опциональный параметр
#тип - целое число
#если не задан - выводятся все доступные данные
#size = 3
}
output "test" {
value = data.dynamix_disk_list_unattached.dlu
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Получение статуса репликации диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_replication" "dr" {
#id диска для которого подключена репликация
#обязательный параметр
#тип - целое число
disk_id = 49304
#id реплики диска
#обязательный параметр
#тип - целое число
replica_disk_id = 1213
}
output "test" {
value = data.dynamix_disk_replication.dr
}

View File

@@ -0,0 +1,43 @@
/*
Пример использования
Получение конкретного снапшота
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_snapshot" "ds" {
#Номер диска
#обязательный параметр
#тип - целое число
disk_id = 20100
#Ярлык диска
#обязательный параметр
#тип - строка
label = "label"
}
output "test" {
value = data.dynamix_disk_snapshot.ds
}

View File

@@ -0,0 +1,38 @@
/*
Пример использования
Получение списка снапшотов диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_snapshot_list" "ds" {
#номер диска
#обязательный параметр
#тип - целое число
disk_id = 20100
}
output "test" {
value = data.dynamix_disk_snapshot_list.ds
}

View File

@@ -0,0 +1,117 @@
/*
Пример использования
Ресурса диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk" "disk" {
#id аккаунта
#обязательный параметр
#тип - целое число
account_id = 88366
#gid
#обязательный параметр
#тип - целое число
gid = 212
#название диска диска
#обязательный параметр
#тип - строка
disk_name = "super-disk-re"
#максимальный размер диска
#обязательный параметр
#тип - целое число
size_max = 20
#тип диска
#опциональный параметр
#тип - строка
#допустимые значения: "D", "B", "T"
#значение по умолчанию: "D"
#type = "d"
#sep id
#опциональный параметр
#тип - целое число
#значение по умолчанию 0
#sep_id = 1
#название pool
#опциональный параметр
#тип - строка
#pool = "pool_name"
#описание диска
#опциональный параметр
#тип - строка
#desc = "description"
#флаг поделиться диском
#опциональный параметр
#тип - булев
#shareable = true
#настройки лимитов операций записи/чтения с диска
#опциональный параметр
#тип - блок, тип вложенных полей - число
iotune = {
read_bytes_sec = 0
read_bytes_sec_max = 0
read_iops_sec = 0
read_iops_sec_max = 0
size_iops_sec = 0
total_bytes_sec = 0
total_bytes_sec_max = 0
total_iops_sec = 3000
total_iops_sec_max = 0
write_bytes_sec = 0
write_bytes_sec_max = 0
write_iops_sec = 0
write_iops_sec_max = 0
}
#настройки для удаления диска
#флаг для удаления диска
#опциональный параметр
#тип - булев
#permanently = true
#причина удаления диска
#опциональный параметр
#тип - строка
#reason = "delete"
#флаг отсоединения диска от машины перед удалением
#опциональный параметр
#тип - булев
#detach = true
}
output "test" {
value = dynamix_disk.disk
}

View File

@@ -0,0 +1,84 @@
/*
Пример использования
Ресурс репликации диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_replication" "dr" {
#id диска из которого будет создана реплика
#обязательный параметр
#тип - целое число
disk_id = 31606
#имя реплики диска
#обязательный параметр
#тип - строка
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 = dynamix_disk_replication.dr
}

View File

@@ -0,0 +1,55 @@
/*
Пример использования
Ресурс снапшота диска
*/
#Раскомментируйте этот код,
#и внесите необходимые правки в версию и путь,
#чтобы работать с установленным вручную (не через hashicorp provider registry) провайдером
/*
terraform {
required_providers {
dynamix = {
source = "basistech.ru/tf/dynamix"
version = "<VERSION>"
}
}
}
*/
provider "dynamix" {
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 "dynamix_disk_snapshot" "ds" {
#номер диска
#обязательный параметр
#тип - целое число
disk_id = 20100
#ярлык диска
#обязательный параметр
#тип - строка
label = "label"
#флаг rollback
#опциональный параметр
#тип - булев
rollback = false
#временная метка timestamp
#опциональный параметр
#применяется в связке с rollback = true
#дефолтное значение - 0
#тип - целое число
timestamp = 0
}
output "test" {
value = dynamix_disk_snapshot.ds
}