2017-05-01 44 views
2

我想使用Terraform v0.9.3使用OSX Sierra的文件提供程序在Azure中創建的Ubuntu 16.04服務器上填充文件。即使當我嘗試複製到可公開寫入的目錄(/ var/tmp,/ tmp)時,也沒有文件測試工作。這是AWS另一個」的作品,但不azurerm功能從谷歌工作?沒什麼。Terraform - 文件提供程序不會將文件複製到azurerm的地方

Terraform片斷

#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/" 
    } 

回答

1

你加連接會話如下?讓我知道,如果它還是不

# 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 - 的C用於連接的SSH密鑰的內容。這些可以使用file()插值函數從磁盤上的文件加載。如果提供,這將優先於密碼。

private_key = "${file("${path.module}/my-private-key")}" 

參見:

Provisioner Connections

+0

我沒有試過,謝謝。獲取相同的錯誤面前: azurerm_virtual_machine.deploy01_vm:仍然創造...(9m0s經過) 錯誤應用計劃: 1個錯誤發生: * azurerm_virtual_machine.deploy01_vm:1個錯誤發生: * dial tcp:22:getsockopt:連接被拒絕 – perniciouscaffeine

+1

您是否打開端口22的防火牆(安全組)? – BMW

+0

@perniciouscaffeine你使用'root'還是其他用戶?您無法在Azure中使用密碼登錄root。 –

相關問題