はじめに
AppRunnerのデプロイ完了時に、通知が出したくて調べたところ、EventBridgeできそう(リンク)
この通りにやったらうまくいかない!!
結論
detail-typeも違うし、なんかキー名全然違う(笑)
公式ドキュメントだと「Service Status Change」のものが、実際は、「AppRunner Service Status Change」だった。他にもいろいろ違ったので、以下イベント例。
{
"version": "",
"id": "xxxxxxxxxxxxxxxxxxxxxxxxxx,
"detail-type": "AppRunner Service Status Change",
"source": "aws.apprunner",
"account": "123456789012",
"time": "yyyy-mm-ddThh:MM:ssZ",
"region": "ap-northeast-1",
"resources": [
"arn:aws:apprunner:ap-northeast-1:123456789012:service/xxxxxxxxx"
],
"detail": {
"serviceId": "xxxxxxxxxxxxxxxxxxxxxxxxxx",
"serviceName": "xxxxxxxxxx",
"message": "Service status is set to RUNNING.",
"previousServiceStatus": "OPERATION_IN_PROGRESS",
"currentServiceStatus": "RUNNING",
"severity": "INFO"
}
}
みたいな感じなので、デプロイ成功時に通知を出す場合は以下のような感じ!
サービス名もフィルタした方がよさそうだけど、公式ドキュメントもたまには間違ってるので気をつけなはれや!!
{
"detail-type": ["AppRunner Service Status Change"],
"source": ["aws.apprunner"],
"account": ["123456789012"],
"detail": {
"previousServiceStatus": ["OPERATION_IN_PROGRESS"],
"currentServiceStatus": ["RUNNING"]
}
}