Terraform rds-aws 不支持的属性“名称”

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

我使用

terraform-aws-modules/rds/aws
作为“db”模块的源,该模块被我的其他数据库模块用作源。如果不对这些部分进行任何代码更改,我在尝试使用 Terraform 进行规划时会收到错误。下面我会详细介绍。

我正在使用

terraform-aws-modules/rds/aws

运行以下模块
module "db" {
  source  = "terraform-aws-modules/rds/aws"
  version = "~> 4.2"

  identifier = var.name

  allocated_storage = var.storage

  db_name  = replace(var.name, "-", "")
 
  ...other fields
}

但是当 terraform 尝试规划时,我收到此错误:

错误:不支持的属性

在 .terraform/modules/my-db.db/modules/db_instance/outputs.tf 第 63 行,在输出“db_instance_name”中: 63:值=尝试(aws_db_instance.this[0].name,“”)

该对象没有参数、嵌套块或名为的导出属性 │ “名字”。

我认为这与

aws_db_instance
中弃用的“名称”有关。但我没有使用
aws_db_instance
,所以我猜测它实际上是由
terraform-aws-modules/rds/aws
使用的。我已经更新了版本,但似乎没有任何作用...

terraform amazon-rds terraform-provider-aws
1个回答
0
投票

“我认为这与 aws_db_instance 中弃用的“name”有关。但我没有使用 aws_db_instance”

这不是真的。您最常使用的模块肯定是使用

aws_db_instance

module "db" {
 source  = "terraform-aws-modules/rds/aws"
 version = "~> 4.2"

我已经更新了版本,但似乎没有任何作用...

您尚未更新模块。 4.2版本落后了几个主要版本。截至我发布此答案时,该模块的最新版本

6.1.1

您需要更新到更新版本的 Terraform 模块才能修复您看到的错误。

© www.soinside.com 2019 - 2024. All rights reserved.