Difference between revisions of "Terraform provisioner"
Jump to navigation
Jump to search
Line 9: | Line 9: | ||
} | } | ||
} | } | ||
+ | |||
+ | |||
+ | == DO Example == | ||
+ | * https://www.digitalocean.com/community/tutorials/how-to-use-ansible-with-terraform-for-configuration-management | ||
+ | <pre> | ||
+ | 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" | ||
+ | } | ||
+ | </pre> | ||
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
- Terraform, OpenTofu, Terrakube.org, Installation, Terraform AWS, Terraform GCP, Terraform commands, Terraform Cloud, Terraform Enterprise (TFE), HCL, HIL, meta-arguments, providers, modules, resource, provisioners, data sources, backends: remote backends, examples, configuration files, state files, variables, types, Terraform Registry, conditionals:
depends_on
, functions, Blocks, dynamic blocks, errors, Terragrunt, Terraformer, Terratest, Terraform certifications, Terraform map type, Terraform Associate, Terraform: list type,TF_VAR_, TF_LOG
, Terraform provider versioning, Terraform Style Conventions, Required version, Terraform plugin, Terraform Named Values, tags, Changelog,tfsec, tflint
, Operators, Expressions:for, splat
, Debugging, Namespaces, Terraform Landing Zones, CDKTF, Atmos
Advertising: