如何为Terraform配置凭据文件

如何为Terraform配置凭据文件,terraform,Terraform,我在terraform中配置了以下提供程序: provider "google" { credentials = "${file("key.json")}" project = "project-123456" region = "${var.region}" } 我能够将项目名称移动到调用terraform plan和apply时传入的变量。但是凭证密钥文件似乎不可配置 provider "google" { credentials = "${var.key

我在terraform中配置了以下提供程序:

provider "google" {
  credentials = "${file("key.json")}"
  project     = "project-123456"
  region      = "${var.region}"
}
我能够将项目名称移动到调用terraform plan和apply时传入的变量。但是凭证密钥文件似乎不可配置

provider "google" {
  credentials = "${var.key}"
  project     = "${var.project}"
  region      = "${var.region}"
}
地形平面图-var key='${file(“key.json”)}'-var project=project-123456

抛出此错误:

  • provider.google:凭据不是有效的JSON“${file”(.key.JSON”)}”:查找证书开头的无效字符“$” 价值观
我也试过这样:

provider "google" {
  credentials = "${file(${var.key})}"
  project     = "${var.project}"
  region      = "${var.region}"
}
地形平面图-var key=key.json-var project=project-123456

但它抛出了一个错误:

读取提供程序配置的配置时出错google:在1:8处解析错误:应为表达式,但发现无效序列“$”


如何为提供商配置凭据文件?

我猜到了!在我的最后一次尝试中需要一些额外的引用:

凭据=“${file(${var.key})}”

凭据=“${file(${var.key})}”

地形平面图-var key=key.json-var project=project-123456