我正在尝试使用来自OSX Sierra的文件配置程序,使用Terraform v0.9.3在Azure中创建的Ubuntu 16.04服务器上填充文件。即使我尝试复制到可公开写入的目录(/ var / tmp,/ tmp),也没有文件测试工作。这是另一个“在AWS中工作,但不适用于azurerm功能吗?没有谷歌。
#copy app file into place:
provisioner "file" {
source = "/Users/person/Terraform/Azure/files/busybox.sh"
destination = "/var/tmp/busybox.sh"
}
#can I copy as root?:
provisioner "file" {
source = "/Users/person/Terraform/Azure/files/random_file"
destination = "/root/QWERTYFILE"
}
#can I copy anywhere?:
provisioner "file" {
source = "/Users/person/Coding/Azure/files/random_file"
destination = "/tmp/"
}
答案 0 :(得分:2)
您是否添加了如下连接会话?让我知道它是否有效
# Copies the file as the root user using SSH
provisioner "file" {
source = "conf/myapp.conf"
destination = "/etc/myapp.conf"
connection {
type = "ssh"
user = "root"
password = "${var.root_password}"
}
}
如果您不想使用密码,可以设置private_key
。
private_key - 用于连接的SSH密钥的内容。可以使用file()插值函数从磁盘上的文件加载这些文件。如果提供密码,则优先于密码。
private_key = "${file("${path.module}/my-private-key")}"
参见: