2 google-cloud-platform terraform devops terraform-provider-gcp google-cloud-run
在GCP上,我尝试使用下面的 Terraform 代码运行Cloud Run服务“renderer”,在此代码中,我使用plus(连接“gcr.io/”、变量var.project_id和“/renderer:latest” +) :
resource "google_cloud_run_service" "renderer" {
name = "renderer"
location = "asia-northeast1"
template {
spec {
containers {
image = "gcr.io/" + var.project_id + "/renderer:latest" // Here
}
service_account_name = google_service_account.renderer_identity.email
}
}
traffic {
percent = 100
latest_revision = true
}
}
Run Code Online (Sandbox Code Playgroud)
然后,当我应用上面的代码时,出现以下错误:
resource "google_cloud_run_service" "renderer" {
name = "renderer"
location = "asia-northeast1"
template {
spec {
containers {
image = "gcr.io/" + var.project_id + "/renderer:latest" // Here
}
service_account_name = google_service_account.renderer_identity.email
}
}
traffic {
percent = 100
latest_revision = true
}
}
Run Code Online (Sandbox Code Playgroud)
是否不能使用plus(+)进行连接?如果不可能,我该如何在Terraform中进行串联?
小智 9
是的,在Terraform中不可能使用plus(+)进行串联。因此,您需要使用“插值语法” ${var.project_id}进行串联,如下所示,而不是plus(+):
resource "google_cloud_run_service" "renderer" {
name = "renderer"
location = "asia-northeast1"
template {
spec {
containers {
image = "gcr.io/${var.project_id}/renderer:latest" // Here
}
service_account_name = google_service_account.renderer_identity.email
}
}
traffic {
percent = 100
latest_revision = true
}
}
Run Code Online (Sandbox Code Playgroud)
另外,不能使用plus(+)进行连接,但可以使用plus(+)进行计算。例如,您的Terraform代码在“traffic”块中有“percent”:
resource "google_cloud_run_service" "renderer" {
name = "renderer"
location = "asia-northeast1"
template {
spec {
containers {
image = "gcr.io/${var.project_id}/renderer:latest" // Here
}
service_account_name = google_service_account.renderer_identity.email
}
}
traffic {
percent = 100
latest_revision = true
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用plus(+)将30添加到100:
traffic {
percent = 100
latest_revision = true
}
Run Code Online (Sandbox Code Playgroud)
而且,甚至数字字符串“100”和“30”也可以计算为Number 类型:
traffic {
percent = 100 + 30 // 130
latest_revision = true
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6893 次 |
| 最近记录: |