Официальный Guide по Terraform
Пример использования в Digital Ocean
vim main.tf
***
data "external" "env" {
program = ["jq", "-n", "env"]
}
provider "digitalocean" {
token = data.external.env.result.DO_TOKEN
}
***
vim main.tf
***
resource "hcloud_server" "web" {
***
provisioner "remote-exec" {
connection {
type = "ssh"
host = self.ipv4_address
user = "root"
private_key = file("~/.ssh/key")
}
inline = [
"echo 'root:${var.root_pass}' | chpasswd"
]
}
}