From c0904de73e59d8ea3898d106efe02437205472c6 Mon Sep 17 00:00:00 2001 From: Sebastian Rieger Date: Tue, 21 May 2024 12:29:23 +0200 Subject: [PATCH] moved terraform lab1 example back to deprecated floating ip assignment as new implementation does not set port id --- .gitignore | 1 + terraform/lab1/lab1.tf | 24 ++++++++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 1c777ed..46e9d96 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ venv **/terraform.tfstate.backup **/.terraform.lock.hcl **/.terraform +**/.terraform.tfstate.lock.info diff --git a/terraform/lab1/lab1.tf b/terraform/lab1/lab1.tf index 6bc912f..946d4a8 100644 --- a/terraform/lab1/lab1.tf +++ b/terraform/lab1/lab1.tf @@ -14,7 +14,7 @@ variable "group_number" { locals { auth_url = "https://10.32.4.182:5000/v3" user_name = "CloudComp${var.group_number}" - user_password = "" + user_password = "" tenant_name = "CloudComp${var.group_number}" #network_name = "CloudComp${var.group_number}-net" router_name = "CloudComp${var.group_number}-router" @@ -165,6 +165,8 @@ resource "openstack_compute_instance_v2" "terraform-instance-1" { EOF } + + ########################################################################### # # assign floating ip to instance @@ -172,9 +174,27 @@ resource "openstack_compute_instance_v2" "terraform-instance-1" { ########################################################################### resource "openstack_networking_floatingip_v2" "fip_1" { pool = local.floating_net - port_id = openstack_compute_instance_v2.terraform-instance-1.network[0].port } +resource "openstack_compute_floatingip_associate_v2" "terraform-instance-1-ip" { + floating_ip = openstack_networking_floatingip_v2.fip_1.address + instance_id = openstack_compute_instance_v2.terraform-instance-1.id +} + +# does not work, though openstack_compute_floatingip_associate_v2 is deprecated, +# openstack_compute_instance_v2.terraform-instance-1.network[0].port is empty after instance creation: "" +# +#resource "openstack_networking_floatingip_associate_v2" "terraform-instance-1-ip" { +# floating_ip = openstack_networking_floatingip_v2.fip_1.address +# port_id = openstack_compute_instance_v2.terraform-instance-1.network[0].port +#} +# +# even better, as soon as openstack_compute_instance_v2.terraform-instance-1.network[0].port is not "": +#resource "openstack_networking_floatingip_v2" "fip_1" { +# pool = local.floating_net +# port_id = openstack_compute_instance_v2.terraform-instance-1.network[0].port +#} + output "vip_addr" { value = openstack_networking_floatingip_v2.fip_1 }