为什么' terraform init -backend-config '不读取我的后端配置文件? &



我正在尝试运行terraform init并指向特定的后端配置。

阅读Terraform上的文档,它只是一个标准的key=value文件,就像tfvars一样。这是我的配置文件的样子:

resource_group_name  = "MY_RG_NAME"
storage_account_name = "MY_SA_NAME"
container_name       = "MY_C_NAME"
key                  = "MY_KEY"

我的后端在Azure中,所以如果我的文件在后端。tfbackend文件,我运行

terraform init -backend-config=backend.tfbackend

我启用了跟踪日志记录,我可以看到我的文件没有被读取,因为terraform说它找不到,但它肯定在那里。我和另一个和我一起工作的工程师谈过,他说这个开始不工作了。

有人知道是什么问题吗?当我创建配置文件时,我不知道如何指定后端应该使用azurerm提供程序,我可能会错过吗?

我的步骤:

  • 以key=value格式创建我的文件
  • runterraform init -backend-config=<path to file>

我希望Terraform初始化的信息在我的配置文件

您用az login登录了吗?

terraformtf文件旁边执行?

命令是否与

相似?
terraform init
-backend-config="storage_account_name=${STORAGE_ACCOUNT_NAME}"
-backend-config="container_name=${CONTAINER_NAME}"
-backend-config="access_key=$${ACCOUNT_KEY}"
-backend-config="key=${TFSTATE_FILE}"

你的配置不应该是这样的。你需要指定你使用的后端类型,等等。

terraform {
backend "azurerm" {
resource_group_name  = "YOUR_RG_NAME"
storage_account_name = "YOUR_SA_NAME"
container_name       = "YOUR_C_NAME"
key                  = "YOUR_KEY"
}
}

我通常将它与提供者(即backend.tf)分开声明

最新更新