4.6.0
This commit is contained in:
177
samples/cloudapi/vins/resource_vins/main.tf
Normal file
177
samples/cloudapi/vins/resource_vins/main.tf
Normal file
@@ -0,0 +1,177 @@
|
||||
/*
|
||||
Пример использования
|
||||
Управление 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://ds1.digitalenergy.online"
|
||||
#oauth2_url = <DECORT_SSO_URL>
|
||||
oauth2_url = "https://sso.digitalenergy.online"
|
||||
allow_unverified_ssl = true
|
||||
}
|
||||
|
||||
|
||||
resource "decort_vins" "vins" {
|
||||
#имя создаваемого ресурса
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
name = "Test_name"
|
||||
|
||||
#id ресурсной группы для создаения ресурса
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
rg_id = 10101
|
||||
|
||||
#id аккаунта для создаения ресруса
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
account_id = 2023
|
||||
|
||||
#id внешней сети для подключения к ней ресурса
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
ext_net_id = 2222
|
||||
|
||||
#ip внешней сети для подключения к нему ресурса
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ext_ip_addr = "1.1.1.1"
|
||||
|
||||
#private network IP CIDR
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ipcidr = "192.168.0.1"
|
||||
|
||||
#количество зарезервированных адресов на момент создания
|
||||
#опциональный параметр
|
||||
#значение по умолчанию 32
|
||||
#тип - целое число
|
||||
pre_reservations_num = 2
|
||||
|
||||
#grid (platform) ID
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
gid = 2002
|
||||
|
||||
#описание
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
desc = "Description"
|
||||
|
||||
#ручное подключение и отключение ресурса
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
enable = true
|
||||
|
||||
#удаление навсегда
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
permanently = true
|
||||
|
||||
#удаляет за собой все зависимые ресурсы
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
force = true
|
||||
|
||||
#блок для резервирования ip
|
||||
#опциональный параметр
|
||||
#тип - блок ip
|
||||
ip {
|
||||
#тип подключения
|
||||
#обязательный параметр
|
||||
#тип - строка
|
||||
type = "DHCP"
|
||||
|
||||
#ip который необходимо зарезервировать
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
ip_addr = "192.168.5.5"
|
||||
|
||||
#mac который необходимо зарезервировать
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
mac_addr = "ff:ff:ff:ff:ff:ff"
|
||||
}
|
||||
|
||||
#блок для добавления natRule
|
||||
#опциональный параметр
|
||||
#тип - блок правил nat
|
||||
nat_rule {
|
||||
#ip внутренний
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
int_ip = "192.168.0.28"
|
||||
|
||||
#внутренний порт
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
int_port = 80
|
||||
|
||||
#начало диапазона внешних портов
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
ext_port_start = 8001
|
||||
|
||||
#конец диапазона внешних портов
|
||||
#опциональный параметр
|
||||
#тип - целое число
|
||||
ext_port_end = 8001
|
||||
|
||||
#протокол natRule
|
||||
#опциональный параметр
|
||||
#тип - строка
|
||||
proto = "tcp"
|
||||
}
|
||||
|
||||
#восстановление ресурса
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
restore = true
|
||||
|
||||
#перезапуск vnfDev
|
||||
#опциональный параметр
|
||||
#тип - булев
|
||||
vnfdev_restart = 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_vins.vins
|
||||
}
|
||||
Reference in New Issue
Block a user