diff --git a/DEV_STAND/FullPipe/org_ips.tf b/DEV_STAND/FullPipe/org_ips.tf new file mode 100644 index 0000000..4fa90f4 --- /dev/null +++ b/DEV_STAND/FullPipe/org_ips.tf @@ -0,0 +1,13 @@ +# vcOrg -> modify (modifier: ip_space) — выделение внешних IP организации. +# UUID организации берём из состояния созданного VDC (state_params.organizationUid), +# т.к. var.organization может быть display-именем, а модификатору нужен UUID. +resource "nubes_vc_org_ip_space" "org_ips" { + vc_org_id = nubes_vc_vdc.vdc.state_params["organizationUid"] + + v_ip_configure = jsonencode([ + { name = var.org_ip_space_name, count = var.org_ip_count } + ]) + + # modify организации доступен только после создания VDC и Edge + depends_on = [nubes_vc_nsxt.edge] +} diff --git a/DEV_STAND/FullPipe/outputs.tf b/DEV_STAND/FullPipe/outputs.tf index 13ee3e0..9013f2a 100644 --- a/DEV_STAND/FullPipe/outputs.tf +++ b/DEV_STAND/FullPipe/outputs.tf @@ -27,3 +27,8 @@ output "nsxt_state_params" { description = "Параметры состояния Edge (vc_nsxt) из API" value = nubes_vc_nsxt.edge.state_params } + +output "org_ip_space" { + description = "Выделенные внешние IP организации (v_ip_configure)" + value = nubes_vc_org_ip_space.org_ips.v_ip_configure +} diff --git a/DEV_STAND/FullPipe/variables.tf b/DEV_STAND/FullPipe/variables.tf index 6d8cfff..08aaa74 100644 --- a/DEV_STAND/FullPipe/variables.tf +++ b/DEV_STAND/FullPipe/variables.tf @@ -101,3 +101,17 @@ variable "nsxt_second_dns" { default = "185.247.187.77" description = "Второй DNS" } + +# --- vc_org (Организация в Cloud Director) — модификатор ip_space --- + +variable "org_ip_space_name" { + type = string + default = "internet-ipv4-v1" + description = "Имя ipSpace организации для выделения внешних IP (значение из ЛК)" +} + +variable "org_ip_count" { + type = number + default = 1 + description = "Кол-во выделяемых внешних IP организации" +}