Amazon web services 如何指定空快照_标识符或数据源值

Amazon web services 如何指定空快照_标识符或数据源值,amazon-web-services,terraform,amazon-rds,terraform-provider-aws,amazon-aurora,Amazon Web Services,Terraform,Amazon Rds,Terraform Provider Aws,Amazon Aurora,我正在尝试创建一个公共模块,以允许构建rds群集,但我希望能够选择从快照或从头开始构建 我使用了一个count来选择是否执行有效的数据源查找。但是,如果将其设置为0且未运行,资源将失败,因为它不知道什么是数据.aws\u db\u cluster\u snapshot.latest\u cluster\u snapshot。有没有一种方法可以让我不太想自己 数据源: data "aws_db_cluster_snapshot" "latest_cluster_snapshot" { coun

我正在尝试创建一个公共模块,以允许构建rds群集,但我希望能够选择从快照或从头开始构建

我使用了一个
count
来选择是否执行有效的数据源查找。但是,如果将其设置为0且未运行,资源将失败,因为它不知道什么是
数据.aws\u db\u cluster\u snapshot.latest\u cluster\u snapshot
。有没有一种方法可以让我不太想自己

数据源

data "aws_db_cluster_snapshot" "latest_cluster_snapshot" {
  count                 = "${var.enable_restore == "true" ? 1 : 0}"
  db_cluster_identifier = "${var.snapshot_to_restore_from}"
  most_recent           = true
}
resource "aws_rds_cluster" "aurora_cluster" {
  ...
  snapshot_identifier = "${var.enable_restore == "false" ? "" : data.aws_db_cluster_snapshot.latest_cluster_snapshot.id}"
  ...
}
资源

data "aws_db_cluster_snapshot" "latest_cluster_snapshot" {
  count                 = "${var.enable_restore == "true" ? 1 : 0}"
  db_cluster_identifier = "${var.snapshot_to_restore_from}"
  most_recent           = true
}
resource "aws_rds_cluster" "aurora_cluster" {
  ...
  snapshot_identifier = "${var.enable_restore == "false" ? "" : data.aws_db_cluster_snapshot.latest_cluster_snapshot.id}"
  ...
}
版本

data "aws_db_cluster_snapshot" "latest_cluster_snapshot" {
  count                 = "${var.enable_restore == "true" ? 1 : 0}"
  db_cluster_identifier = "${var.snapshot_to_restore_from}"
  most_recent           = true
}
resource "aws_rds_cluster" "aurora_cluster" {
  ...
  snapshot_identifier = "${var.enable_restore == "false" ? "" : data.aws_db_cluster_snapshot.latest_cluster_snapshot.id}"
  ...
}
地形v0.11.10

  • provider.aws v2.33.0

您使用的是什么版本的Terraform?抱歉。我通常包括这一点。更新了原来的帖子。有什么东西阻止你移动到0.12吗?0.12增加了对懒散评估的支持,这将使这项工作起作用。没有什么能彻底阻止我(除了有大量工作要实现)。如果没有办法在0.11.x中实现它,那么我想我必须升级。