terraformで、
Error: Failed getting task definition ClientException: Unable to describe task definition. "XXXX"
というエラーが出た時の対応です。
エラーが発生するtfファイル
resource "aws_ecs_task_definition" "test" {
// 省略
}
# Simply specify the family to find the latest ACTIVE revision in that family.
data "aws_ecs_task_definition" "test" {
task_definition = aws_ecs_task_definition.test.family
}
一見問題なさそうですが、新規作成の時にエラーが発生します。
対応
resource "aws_ecs_task_definition" "test" {
// 省略
}
# Simply specify the family to find the latest ACTIVE revision in that family.
data "aws_ecs_task_definition" "test" {
task_definition = aws_ecs_task_definition.test.family
depends_on = [aws_ecs_task_definition.test] // 追加
}
この様に、depends_on
で依存関係を明示してあげるとうまくいきます。
参考
data.aws_ecs_task_definition: Failed getting task definition · Issue #1274 · hashicorp/terraform-provider-aws
aws_ecs_task_definition | Data Sources | hashicorp/aws | Terraform Registry
※この記事を書いている段階で、terraformのドキュメントのexample通りに書いてもこの事象が発生します
補足
Terraform v0.13.5 で動作確認しました。