Я создаю AWS экземпляр EC2 и использую Terraform Cloud в качестве бэкэнда.
в . / Main.tf :
terraform {
required_version = "~> 0.12"
backend "remote" {
hostname = "app.terraform.io"
organization = "organization"
workspaces { prefix = "test-dev-" }
}
в . / Modules / instances / function.tf
resource "aws_instance" "test" {
ami = "${var.ami_id}"
instance_type = "${var.instance_type}"
subnet_id = "${var.private_subnet_id}"
vpc_security_group_ids = ["${aws_security_group.test_sg.id}"]
key_name = "${var.test_key}"
tags = {
Name = "name"
Function = "function"
}
provisioner "remote-exec" {
inline = [
"sudo useradd someuser"
]
connection {
host = "${self.public_ip}"
type = "ssh"
user = "ubuntu"
private_key = "${file("~/.ssh/mykey.pem")}"
}
}
}
и в результате я получил следующую ошибку:
Call to function "file" failed: no file exists at /home/terraform/.ssh/...
, так что здесь происходит то, что terraform пытается найти файл в Terraform Cloud вместо моего локального компьютера. Как я могу передать файл с моего локального компьютера и все еще использовать Terraform Cloud?