X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=fdio.infra.terraform%2F3n_aws_c5n%2Fdeploy%2Fmain.tf;h=769aa59f1a2d7fff3b291cc1660713c7d2fbefec;hb=1ff165dc63cc5b1a2bfab11fa6a234b42e3c99ce;hp=7c029c6c549e793915027b32d0222641bea176cf;hpb=c318223fcd266c0ee2982e803c44e193c2023054;p=csit.git diff --git a/fdio.infra.terraform/3n_aws_c5n/deploy/main.tf b/fdio.infra.terraform/3n_aws_c5n/deploy/main.tf index 7c029c6c54..769aa59f1a 100644 --- a/fdio.infra.terraform/3n_aws_c5n/deploy/main.tf +++ b/fdio.infra.terraform/3n_aws_c5n/deploy/main.tf @@ -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