AWSバックアップの選択では、EFSファイルシステムと2つのRDSインスタンスの両方をバックアップの選択に追加しようとしています。
resource "aws_backup_selection" "backup" {
name = "${var.name}-backup-selection"
iam_role_arn = aws_iam_role.backup.arn
plan_id = aws_backup_plan.backup.id
resources = [
concat([aws_efs_file_system.files.arn], aws_rds_cluster_instance.cluster_instances.*.arn)
]
}
示されている「concat」は、混合エラーメッセージですでに試したバリアントの1つです。これは私にこれを与えます:
Error: Incorrect attribute value type
on backup.tf line 51, in resource "aws_backup_selection" "backup":
51: resources = [
52: concat([aws_efs_file_system.files.arn], aws_rds_cluster_instance.cluster_instances.*.arn)
53: ]
|----------------
| aws_efs_file_system.files.arn is "arn:aws:elasticfilesystem:eu-central-1:xxx:file-system/fs-xxx"
| aws_rds_cluster_instance.cluster_instances is tuple with 2 elements
Inappropriate value for attribute "resources": element 0: string required.
ARN文字列と2つのインスタンスのリストの両方を、resources要素に必要なリスト形式に組み合わせるにはどうすればよいですか?
ありがとうございました。
concatはリストを返すため、角かっこを追加せずにリストをリソースに直接割り当てることができます。
resource "aws_backup_selection" "backup" {
name = "${var.name}-backup-selection"
iam_role_arn = aws_iam_role.backup.arn
plan_id = aws_backup_plan.backup.id
resources =
concat([aws_efs_file_system.files.arn], aws_rds_cluster_instance.cluster_instances[*].arn)
}
追加の角かっこは、concatのリスト結果をリストのリストに変換しますが、これはここで必要なものではありません。
[レガシー(属性のみ)スプラット式は非推奨] [1]以降にも変換aws_rds_cluster_instance.cluster_instances.*.arn
しましたaws_rds_cluster_instance.cluster_instances[*].arn
。
[1]:https://www.terraform.io/docs/configuration/expressions.html#legacy-attribute-only-splat-expressions l
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加