🐕

EventBridge Ruleから生成したCloudFormation Templateは修正が必要な場合がある

2023/03/08に公開

EventBridge Ruleには既存のルールからCloudFormation Templateを生成する機能があります。
https://docs.aws.amazon.com/ja_jp/eventbridge/latest/userguide/rule-generate-template.html

ECS Fargateのスケジュールタスクを複製するため、既存のルールからテンプレートを生成し、ルール名など必要な部分を書き換えてCloudFormationスタックを作成したところ以下のエラーで作成が失敗しました。

Encountered unsupported property awsvpcConfiguration

テンプレートには確かに awsvpcConfiguration のプロパティが含まれていました。このプロパティは生成時のままで変更していませんでした。

CloudFormation-Template
        "Targets": [{
          "Id": "ecs-batch",
          "Arn": "arn:aws:ecs:ap-northeast-1:123456789012:cluster/ecs-cluster",
          "RoleArn": "arn:aws:iam::123456789012:role/ecs-role",
          "Input": "{}",
          "EcsParameters": {
            "TaskDefinitionArn": "arn:aws:ecs:ap-northeast-1:123456789012:task-definition/ecs-batch:1",
            "TaskCount": 1,
            "LaunchType": "FARGATE",
            "NetworkConfiguration": {
              "awsvpcConfiguration": {

ドキュメントを確認すると正しいプロパティは AwsVpcConfiguration になるようです。
https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-awsvpcconfiguration.html
この修正を行うとCloudFormationスタックを作成することができました。

Discussion