AWS terraform automation scripts
[csit.git] / resources / tools / terraform / azure / main.tf
index 79fa456..cae6591 100644 (file)
@@ -357,13 +357,12 @@ resource "azurerm_virtual_machine" "tg" {
     }
     os_profile {
         computer_name  = "tg"
-        admin_username = "testuser"
-        admin_password = "Csit1234"
+        admin_username = "ubuntu"
     }
     os_profile_linux_config {
         disable_password_authentication = false
         ssh_keys {
-            path     = "/home/testuser/.ssh/authorized_keys"
+            path     = "/home/ubuntu/.ssh/authorized_keys"
             key_data = file("~/.ssh/id_rsa.pub")
         }
     }
@@ -396,13 +395,12 @@ resource "azurerm_virtual_machine" "dut1" {
     }
     os_profile {
         computer_name  = "dut1"
-        admin_username = "testuser"
-        admin_password = "Csit1234"
+        admin_username = "ubuntu"
     }
     os_profile_linux_config {
         disable_password_authentication = false
         ssh_keys {
-            path     = "/home/testuser/.ssh/authorized_keys"
+            path     = "/home/ubuntu/.ssh/authorized_keys"
             key_data = file("~/.ssh/id_rsa.pub")
         }
     }
@@ -435,13 +433,12 @@ resource "azurerm_virtual_machine" "dut2" {
     }
     os_profile {
         computer_name  = "dut2"
-        admin_username = "testuser"
-        admin_password = "Csit1234"
+        admin_username = "ubuntu"
     }
     os_profile_linux_config {
         disable_password_authentication = false
         ssh_keys {
-            path     = "/home/testuser/.ssh/authorized_keys"
+            path     = "/home/ubuntu/.ssh/authorized_keys"
             key_data = file("~/.ssh/id_rsa.pub")
         }
     }
@@ -474,8 +471,9 @@ resource "null_resource" "deploy_tg" {
                  azurerm_network_interface.tg_if1,
                  azurerm_network_interface.tg_if2 ]
   connection {
-    user = "testuser"
+    user = "ubuntu"
     host = data.azurerm_public_ip.tg_public_ip.ip_address
+    private_key = file("~/.ssh/id_rsa")
   }
   provisioner "ansible" {
     plays {
@@ -485,17 +483,8 @@ resource "null_resource" "deploy_tg" {
       }
       hosts = ["tg"]
       extra_vars = {
-        ansible_python_interpreter = "python3"
+        ansible_python_interpreter = "/usr/bin/python3"
         azure = true
-        remote_net = var.vpc_cidr_d
-        tg_if1_mac = azurerm_network_interface.tg_if1.mac_address
-        tg_if2_mac = azurerm_network_interface.tg_if2.mac_address
-        dut1_if1_mac = azurerm_network_interface.dut1_if1.mac_address
-        dut1_if2_mac = azurerm_network_interface.dut1_if2.mac_address
-        dut2_if1_mac = azurerm_network_interface.dut2_if1.mac_address
-        dut2_if2_mac = azurerm_network_interface.dut2_if2.mac_address
-        dut1_if1_ip = azurerm_network_interface.dut1_if1.private_ip_address
-        dut2_if2_ip = azurerm_network_interface.dut2_if2.private_ip_address
       }
     }
   }
@@ -506,8 +495,9 @@ resource "null_resource" "deploy_dut1" {
                  azurerm_network_interface.dut1_if1,
                  azurerm_network_interface.dut1_if2 ]
   connection {
-    user = "testuser"
+    user = "ubuntu"
     host = data.azurerm_public_ip.dut1_public_ip.ip_address
+    private_key = file("~/.ssh/id_rsa")
   }
   provisioner "ansible" {
     plays {
@@ -517,16 +507,8 @@ resource "null_resource" "deploy_dut1" {
       }
       hosts = ["sut"]
       extra_vars = {
-        ansible_python_interpreter = "python3"
+        ansible_python_interpreter = "/usr/bin/python3"
         azure = true
-        dut1_if1_ip = azurerm_network_interface.dut1_if1.private_ip_address
-        dut1_if1_mac = azurerm_network_interface.dut1_if1.mac_address
-        dut1_if2_ip = azurerm_network_interface.dut1_if2.private_ip_address
-        dut1_if2_mac = azurerm_network_interface.dut1_if2.mac_address
-        dut2_if2_ip = azurerm_network_interface.dut2_if1.private_ip_address
-        dut2_if1_gateway = azurerm_network_interface.dut2_if1.private_ip_address
-        traffic_if1 = var.trex_dummy_cidr_port_0
-        traffic_if2 = var.trex_dummy_cidr_port_1
       }
     }
   }
@@ -537,8 +519,9 @@ resource "null_resource" "deploy_dut2" {
                  azurerm_network_interface.dut2_if1,
                  azurerm_network_interface.dut2_if2 ]
   connection {
-    user = "testuser"
+    user = "ubuntu"
     host = data.azurerm_public_ip.dut2_public_ip.ip_address
+    private_key = file("~/.ssh/id_rsa")
   }
   provisioner "ansible" {
     plays {
@@ -548,16 +531,41 @@ resource "null_resource" "deploy_dut2" {
       }
       hosts = ["sut"]
       extra_vars = {
-        ansible_python_interpreter = "python3"
+        ansible_python_interpreter = "/usr/bin/python3"
         azure = true
-        dut2_if1_ip = azurerm_network_interface.dut2_if1.private_ip_address
+      }
+    }
+  }
+}
+
+eesource "null_resource" "deploy_topology" {
+  depends_on = [ azurerm_virtual_machine.tg,
+                 azurerm_network_interface.tg_if1,
+                 azurerm_network_interface.tg_if2,
+                 azurerm_virtual_machine.dut1,
+                 azurerm_network_interface.dut1_if1,
+                 azurerm_network_interface.dut1_if2
+                 azurerm_virtual_machine.dut2,
+                 azurerm_network_interface.dut2_if1,
+                 azurerm_network_interface.dut2_if2 ]
+  provisioner "ansible" {
+    plays {
+      playbook {
+        file_path = "../../testbed-setup/ansible/cloud_topology.yaml"
+      }
+      hosts = ["local"]
+      extra_vars = {
+        ansible_python_interpreter = "/usr/bin/python3"
+        cloud_topology = "azure"
+        tg_if1_mac = azurerm_network_interface.tg_if1.mac_address
+        tg_if2_mac = azurerm_network_interface.tg_if2.mac_address
+        dut1_if1_mac = azurerm_network_interface.dut1_if1.mac_address
+        dut1_if2_mac = azurerm_network_interface.dut1_if2.mac_address
         dut2_if1_mac = azurerm_network_interface.dut2_if1.mac_address
-        dut2_if2_ip = azurerm_network_interface.dut2_if2.private_ip_address
         dut2_if2_mac = azurerm_network_interface.dut2_if2.mac_address
-        dut1_if2_ip = azurerm_network_interface.dut1_if2.private_ip_address
-        dut1_if2_gateway = azurerm_network_interface.dut1_if2.private_ip_address
-        traffic_if1 = var.trex_dummy_cidr_port_0
-        traffic_if2 = var.trex_dummy_cidr_port_1
+        tg_public_ip = data.azurerm_public_ip.tg_public_ip.ip_address
+        dut1_public_ip = data.azurerm_public_ip.dut1_public_ip.ip_address
+        dut2_public_ip = data.azurerm_public_ip.dut2_public_ip.ip_address
       }
     }
   }