4.6.0
This commit is contained in:
240
samples/cloudbroker/vins/resource_vins/main.tf
Normal file
240
samples/cloudbroker/vins/resource_vins/main.tf
Normal file
@@ -0,0 +1,240 @@
|
||||
/*
|
||||
Пример использования
|
||||
Ресурса vins
|
||||
Ресурс позволяет:
|
||||
1. Создавать vins
|
||||
2. Удалять vins
|
||||
3. Восстанвливать vins
|
||||
4. Добавлять и убирать подключение к внешней сети
|
||||
5. Резервировать и освобождать ip для vins
|
||||
6. Добавлять и удалять natrule
|
||||
7. Перезапускать и редеплоить vnfdev
|
||||
*/
|
||||
|
||||
#Расскомментируйте этот код,
|
||||
#и внесите необходимые правки в версию и путь,
|
||||
#чтобы работать с установленным вручную (не через 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://mr4.digitalenergy.online"
|
||||
#oauth2_url = <DECORT_SSO_URL>
|
||||
oauth2_url = "https://sso.digitalenergy.online"
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
resource "decort_cb_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"
|
||||
|
||||
#приватная сеть IP CIDR
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#ipcidr = "192.168.0.1"
|
||||
|
||||
#количество зарезервированных адресов на момент создания
|
||||
#опциональный параметр
|
||||
#значение по умолчанию 32
|
||||
#тип - целое число
|
||||
#pre_reservations_num = 2
|
||||
|
||||
#grid (platform) ID
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#gid = 2002
|
||||
|
||||
#описание
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#description = "Description"
|
||||
|
||||
#причина запроса
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#reason = "test"
|
||||
|
||||
#блок для указания списка routes
|
||||
#опциональный параметр
|
||||
#тип - список routes
|
||||
#routes = [{
|
||||
#ip целевой сети
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#destination = "DHCP"
|
||||
|
||||
#сетевая маска в формате 255.255.255.255
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#netmask = "192.168.5.5"
|
||||
|
||||
#шлюз по умолчанию
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
#gateway = "192.168.5.5"
|
||||
#}]
|
||||
|
||||
#default qos
|
||||
#опциональный параметр
|
||||
#блок для указания default_qos
|
||||
#тип - список qos
|
||||
#default_qos = {
|
||||
#внутренний трафик, Кбит
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#in_rate = 1
|
||||
|
||||
#burst внутреннего трафика, Кбит
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#in_burst = 1
|
||||
|
||||
#rate внешнего трафика, Кбит
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
#e_rate = 1
|
||||
#}
|
||||
|
||||
#ручное подключение и отключение ресурса
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#enable = true
|
||||
|
||||
#удаление навсегда
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#permanently = true
|
||||
|
||||
#удаляет за собой все зависимые ресурсы
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#force = true
|
||||
|
||||
#блок для резервирования ip
|
||||
#опциональный параметр
|
||||
#тип - список параметров 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"
|
||||
#}
|
||||
|
||||
#блок для добавления natRule
|
||||
#опциональный параметр
|
||||
#тип - список параметров 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
|
||||
#опциональный параметр
|
||||
#true: старт vnfDev; false: стоп vnfDev
|
||||
#тип - булев
|
||||
#vnfdev_start = true
|
||||
|
||||
#перезапуск vnfDev
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#vnfdev_restart = true
|
||||
|
||||
#ресет vnfDev
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#vnfdev_reset = true
|
||||
|
||||
#редеплой vnfDev
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
#vnfdev_redeploy = true
|
||||
|
||||
#список dns
|
||||
#опциональный параметр
|
||||
#применяется при создании и редактировании ресурса
|
||||
#если при создании указать пустой список, то ресурс создается с полем vnfs.dhcp.config.dns, имеющим значение по умолчанию
|
||||
#если при обновлении указать пустой список, то ресурс обновит в модели поле vnfs.dhcp.config.dns с текущего значения на пустой список
|
||||
#тип - список строк
|
||||
#dns = ["1.1.1.1", "2.2.2.2"]
|
||||
|
||||
}
|
||||
|
||||
output "test" {
|
||||
value = decort_cb_vins.vins
|
||||
}
|
||||
Reference in New Issue
Block a user