Update VPP_STABLE_VER files
[csit.git] / fdio.infra.terraform / 3n_aws_c5n / deploy / main.tf
index 7c029c6..769aa59 100644 (file)
@@ -1,5 +1,6 @@
-provider "aws" {
-  region = var.region
+data "vault_aws_access_credentials" "creds" {
+  backend         = "${var.vault-name}-path"
+  role            = "${var.vault-name}-role"
 }
 
 resource "aws_vpc" "CSITVPC" {
@@ -134,7 +135,7 @@ resource "aws_network_interface" "dut1_if1" {
   private_ip        = var.dut1_if1_ip
   private_ips       = [var.dut1_if1_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC, aws_subnet.b]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.b, aws_instance.dut1]
 
   attachment {
     instance     = aws_instance.dut1.id
@@ -152,7 +153,7 @@ resource "aws_network_interface" "dut1_if2" {
   private_ip        = var.dut1_if2_ip
   private_ips       = [var.dut1_if2_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.c, aws_instance.dut1]
 
   attachment {
     instance     = aws_instance.dut1.id
@@ -170,7 +171,7 @@ resource "aws_network_interface" "dut2_if1" {
   private_ip        = var.dut2_if1_ip
   private_ips       = [var.dut2_if1_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC, aws_subnet.c]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.c, aws_instance.dut2]
 
   attachment {
     instance     = aws_instance.dut2.id
@@ -188,7 +189,7 @@ resource "aws_network_interface" "dut2_if2" {
   private_ip        = var.dut2_if2_ip
   private_ips       = [var.dut2_if2_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC, aws_subnet.d]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.d, aws_instance.dut2]
 
   attachment {
     instance     = aws_instance.dut2.id
@@ -206,7 +207,7 @@ resource "aws_network_interface" "tg_if1" {
   private_ip        = var.tg_if1_ip
   private_ips       = [var.tg_if1_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC, aws_subnet.b]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.b, aws_instance.tg]
 
   attachment {
     instance     = aws_instance.tg.id
@@ -224,7 +225,7 @@ resource "aws_network_interface" "tg_if2" {
   private_ip        = var.tg_if2_ip
   private_ips       = [var.tg_if2_ip]
   security_groups   = [aws_security_group.CSITSG.id]
-  depends_on        = [aws_vpc.CSITVPC, aws_subnet.d]
+  depends_on        = [aws_vpc.CSITVPC, aws_subnet.d, aws_instance.tg]
 
   attachment {
     instance     = aws_instance.tg.id
@@ -262,18 +263,23 @@ data "aws_network_interface" "tg_if2" {
 
 # Instances
 resource "aws_instance" "tg" {
-  depends_on                  = [aws_vpc.CSITVPC, aws_placement_group.CSITPG]
-  ami                         = var.ami_image
-  availability_zone           = var.avail_zone
-  instance_type               = var.instance_type
-  key_name                    = aws_key_pair.CSITKP.key_name
-  associate_public_ip_address = true
-  subnet_id                   = aws_subnet.mgmt.id
-  private_ip                  = var.tg_mgmt_ip
-  vpc_security_group_ids      = [aws_security_group.CSITSG.id]
-  placement_group             = aws_placement_group.CSITPG.id
-  source_dest_check           = false
-  # host_id                   = "1"
+  ami                                  = var.ami_image
+  availability_zone                    = var.avail_zone
+  instance_initiated_shutdown_behavior = var.instance_initiated_shutdown_behavior
+  instance_type                        = var.instance_type
+  key_name                             = aws_key_pair.CSITKP.key_name
+  associate_public_ip_address          = true
+  subnet_id                            = aws_subnet.mgmt.id
+  private_ip                           = var.tg_mgmt_ip
+  vpc_security_group_ids               = [aws_security_group.CSITSG.id]
+  placement_group                      = aws_placement_group.CSITPG.id
+  source_dest_check                    = false
+  # host_id                            = "1"
+
+  depends_on = [
+    aws_vpc.CSITVPC,
+    aws_placement_group.CSITPG,
+  ]
 
   root_block_device {
     volume_size = 50
@@ -286,18 +292,24 @@ resource "aws_instance" "tg" {
 }
 
 resource "aws_instance" "dut1" {
-  depends_on                  = [aws_vpc.CSITVPC, aws_placement_group.CSITPG]
-  ami                         = var.ami_image
-  availability_zone           = var.avail_zone
-  instance_type               = var.instance_type
-  key_name                    = aws_key_pair.CSITKP.key_name
-  associate_public_ip_address = true
-  subnet_id                   = aws_subnet.mgmt.id
-  private_ip                  = var.dut1_mgmt_ip
-  vpc_security_group_ids      = [aws_security_group.CSITSG.id]
-  placement_group             = aws_placement_group.CSITPG.id
-  source_dest_check           = false
-  # host_id                   = "2"
+  ami                                  = var.ami_image
+  availability_zone                    = var.avail_zone
+  instance_initiated_shutdown_behavior = var.instance_initiated_shutdown_behavior
+  instance_type                        = var.instance_type
+  key_name                             = aws_key_pair.CSITKP.key_name
+  associate_public_ip_address          = true
+  subnet_id                            = aws_subnet.mgmt.id
+  private_ip                           = var.dut1_mgmt_ip
+  vpc_security_group_ids               = [aws_security_group.CSITSG.id]
+  placement_group                      = aws_placement_group.CSITPG.id
+  source_dest_check                    = false
+  # host_id                            = "2"
+
+  depends_on = [
+    aws_vpc.CSITVPC,
+    aws_placement_group.CSITPG,
+    aws_instance.tg
+  ]
 
   root_block_device {
     volume_size = 50
@@ -310,7 +322,6 @@ resource "aws_instance" "dut1" {
 }
 
 resource "aws_instance" "dut2" {
-  depends_on                  = [aws_vpc.CSITVPC, aws_placement_group.CSITPG]
   ami                         = var.ami_image
   availability_zone           = var.avail_zone
   instance_type               = var.instance_type
@@ -323,6 +334,13 @@ resource "aws_instance" "dut2" {
   source_dest_check           = false
   # host_id                   = "3"
 
+  depends_on = [
+    aws_vpc.CSITVPC,
+    aws_placement_group.CSITPG,
+    aws_instance.tg,
+    aws_instance.dut1
+  ]
+
   root_block_device {
     volume_size = 50
   }
@@ -358,7 +376,13 @@ resource "null_resource" "deploy_tg" {
   depends_on = [
     aws_instance.tg,
     aws_network_interface.tg_if1,
-    aws_network_interface.tg_if2
+    aws_network_interface.tg_if2,
+    aws_instance.dut1,
+    aws_network_interface.dut1_if1,
+    aws_network_interface.dut1_if2,
+    aws_instance.dut2,
+    aws_network_interface.dut2_if1,
+    aws_network_interface.dut2_if2
   ]
 
   connection {
@@ -394,9 +418,15 @@ resource "null_resource" "deploy_tg" {
 
 resource "null_resource" "deploy_dut1" {
   depends_on = [
+    aws_instance.tg,
+    aws_network_interface.tg_if1,
+    aws_network_interface.tg_if2,
     aws_instance.dut1,
     aws_network_interface.dut1_if1,
-    aws_network_interface.dut1_if2
+    aws_network_interface.dut1_if2,
+    aws_instance.dut2,
+    aws_network_interface.dut2_if1,
+    aws_network_interface.dut2_if2
   ]
 
   connection {
@@ -432,6 +462,12 @@ resource "null_resource" "deploy_dut1" {
 
 resource "null_resource" "deploy_dut2" {
   depends_on = [
+    aws_instance.tg,
+    aws_network_interface.tg_if1,
+    aws_network_interface.tg_if2,
+    aws_instance.dut1,
+    aws_network_interface.dut1_if1,
+    aws_network_interface.dut1_if2,
     aws_instance.dut2,
     aws_network_interface.dut2_if1,
     aws_network_interface.dut2_if2