Difference between revisions of "Terraform provisioner"

From wikieduonline
Jump to navigation Jump to search
Line 14: Line 14:
 
* https://www.digitalocean.com/community/tutorials/how-to-use-ansible-with-terraform-for-configuration-management
 
* https://www.digitalocean.com/community/tutorials/how-to-use-ansible-with-terraform-for-configuration-management
  
   provisioner "remote-exec" {
+
   provisioner "[[remote-exec]]" {
 
     inline = ["sudo apt update", "sudo apt install python3 -y", "echo Done!"]
 
     inline = ["sudo apt update", "sudo apt install python3 -y", "echo Done!"]
  
Line 24: Line 24:
 
     }
 
     }
 
   }
 
   }
 
+
   provisioner "local-exec" {
+
   provisioner "[[local-exec]]" {
 
     command = "ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -u root -i '${self.ipv4_address},' --private-key ${var.pvt_key} -e 'pub_key=${var.pub_key}' apache-install.yml"
 
     command = "ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -u root -i '${self.ipv4_address},' --private-key ${var.pvt_key} -e 'pub_key=${var.pub_key}' apache-install.yml"
 
   }
 
   }

Revision as of 14:56, 20 October 2021


resource "aws_instance" "your_web" {
  # ...

  provisioner "local-exec" {
    command = "echo The server's IP address is ${self.private_ip}"
  }
}


DO Example

 provisioner "remote-exec" {
   inline = ["sudo apt update", "sudo apt install python3 -y", "echo Done!"]
   connection {
     host        = self.ipv4_address
     type        = "ssh"
     user        = "root"
     private_key = file(var.pvt_key)
   }
 }

 provisioner "local-exec" {
   command = "ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -u root -i '${self.ipv4_address},' --private-key ${var.pvt_key} -e 'pub_key=${var.pub_key}' apache-install.yml"
 }

See also

Advertising: