Нужно добавить несколько команд в metadata_startup_script
в terraform
скрипт, чтобы запустить compute engine
экземпляр в GCP
Ниже приведен мой код
metadata_startup_script = "curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" ; chmod +x kubectl ; sudo cp kubectl /usr/local/bin"
terraform plan
показывает ошибку ниже
Error: Missing newline after argument
on main.tf line 58, in resource "google_compute_instance" "default":
58: metadata_startup_script = "curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" ; chmod +x kubectl ; sudo cp kubectl /usr/local/bin"
An argument definition must end with a newline.
Любые предложения, чтобы решить эту проблему? Задача состоит в том, чтобы установить kubectl
после запуска compute engine
с помощью приведенных ниже команд.
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo cp kubectl /usr/local/bin"
У вас есть 2 решения
metadata_startup_script = "curl -LO \"https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl\" ; chmod +x kubectl ; sudo cp kubectl /usr/local/bin"
metadata_startup_script = <<SCRIPT
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo cp kubectl /usr/local/bin
SCRIPT
кавычки в следующей строке могут быть проблемой, вы пытались не использовать вторую? metadata_startup_script = "curl -LO" https: