題目の通りですが、なんか気づいたらリポジトリに webhook が設定されていたけど、「これなんの webhook だ?」ってなることありませんか?私はあります。
今回は、AWS CodeBuild / AWS CodePipeline 向けの Webhook が「どのプロジェクト」であったり「どのパイプライン」に紐づくものなのかという話です。
AWS CodePipeline 編
CodePipeline が生成する webhook については、aws codepipeline list-webhooks
というずばりなコマンドが aws-cli にありますので活用しましょう。 ドキュメントはこちら list-webhooks — AWS CLI 2.1.33 Command Reference
後述の CodeBuild とは違い、CodePipeline 側の設定から github 側の hook 設定画面に飛べるわけではないですが、おそらくご期待の調査は可能かなと思います。
注意点としては、SecretToken
など普通に出てくるので実行環境などには注意しましょう。
CodePipeline については、コンソールから調べる方法はわかりませんでした。何かあったら教えてください。
AWS CodeBuild 編
CodeBuild が生成する Webhook については、上手い感じに探せる方法はとりあえずは見つからなく、コンソールからプロジェクトの「ビルドの詳細」画面でちまちまみていくのが良さそうです。画像のような画面の「プライマリソースのウェブフックイベント」にある「ウェブフック」にあるリンクから github repository 側の hook 設定画面にいけますので、それで対応を取ってください。
(逆にいうと、当該リポジトリに対する webhook がなかったらアカウントが違うかそれとも放置されたかって感じです。最低限プロジェクトなかったら webhook 自体がエラーになって github 側からわかると思うのでその辺りはよしなに...)
2021/03/31現在、aws-cli/2.1.32 の時点で aws-cli には webhook 関係が create/update/delete
しかなく、webhook 中心の調査ができなさそうです。また、コンソールから開いても同様です。頑張ってください。*1
ドキュメントはこちらです。 codebuild — AWS CLI 2.1.33 Command Reference
*1: 私はがんばりました