将“aws_acm_certificate”资源添加到terraform文件会导致terraform忽略变量

问题描述 投票:0回答:1

使用aws_acm_certificate资源使terraform忽略提供的变量。

这是一个简单的terraform文件:

variable "aws_access_key_id" {}
variable "aws_secret_key" {}
variable "region" { default = "us-west-1" }

provider "aws" {
  alias = "prod"

  region = "${var.region}"
  access_key = "${var.aws_access_key_id}"
  secret_key = "${var.aws_secret_key}"
}

resource "aws_acm_certificate" "cert" {
  domain_name       = "foo.example.com"
  validation_method = "DNS"

  tags {
    project = "foo"
  }

  lifecycle {
    create_before_destroy = true
  }

}

运行validateplanapply失败:

$ terraform validate -var-file=my.tfvars 
$ cat my.tfvars
region = "us-west-2"
aws_secret_key = "secret"
aws_access_key_id = "not as secret"
terraform terraform-provider-aws
1个回答
0
投票

你的代码没有错。

请做一些清理并再次运行(只有在完全理解你在做什么时才运行rm命令)

rm -rf .terraform
rm terraform.tfstate*

terraform fmt
terraform get -update=true
terraform init
terraform plan
© www.soinside.com 2019 - 2024. All rights reserved.