Meine Frage ist zu diesem git Hub Post ähnlich, aber leider ist es ungelöst:Wie sudo Befehle in Terraform ausführen?
https://github.com/hashicorp/terraform/issues/550
ich eine einfache Art und Weise will sudo-Berechtigungen zu geben, um die Befehle in dem provisioner "remote-exec" { }
Block meines Terraforming-Skripte ausgeführt werden.
ich von einem ansible Hintergrund komme, der die sudo: yes
Option hat, dass alle Befehle ansible Läufe ermöglicht Befehle mit sudo-Berechtigungen zu laufen, wenn die --ask-sudo-pass
optional in meinem ansible-Textbuch Laufbefehle. Ich würde gerne so etwas in dem provisioner "remote-exec"
Block meines Terraform-Skripts machen. Hier
ist der provisioner "remote-exec"
Block I ausgeführt werden soll:
provisioner "remote-exec" {
inline = [
"sudo apt-get update",
"sudo apt-get install -y curl"
]
}
Als ich das laufen in meinem terraform apply
ich die folgenden Zeilen erscheinen in der Ausgabe dieses Befehls zu sehen:
openstack_compute_instance_v2.test.0 (remote-exec): [sudo] password for myUserName:
openstack_compute_instance_v2.test.1 (remote-exec): [sudo] password for myUserName:
openstack_compute_instance_v2.test.2 (remote-exec): [sudo] password for myUserName:
es dann gibt mir nur eine unendliche Anzahl von diesen:
openstack_compute_instance_v2.test.0: Still creating...
openstack_compute_instance_v2.test.1: Still creating...
openstack_compute_instance_v2.test.2: Still creating...
Wie repariere ich das und lasse Terraform sudo Befehle ausführen?
Hinweis: Die Verbindung für meine provisioner "remote-exec"
Block kann nicht root sein, also obwohl das eine einfache Lösung wäre, ist es nicht was ich verwenden kann.