当社の製品は、GitHubでWebHookを作成します。顧客プロジェクトごとに1つ。ブランチごとではなく、GitHub WebHooksがグローバルにトリガーされる
各プロジェクトは、1つのブランチにリンクされています。
GitHubへのpush
が実行されると、対応するWebHookがトリガーされ、順番に、特定の処理を実行するように側のエンドポイントに要求しています。
一般的なシナリオは、顧客が複数のプロジェクトを持ち、同じリポジトリの複数の異なるブランチに接続していることです。したがって、いくつかの異なるWebHooksが同じリポジトリに接続されています。
push
がブランチの1つに対して実行されると、GitHubがすべてのリポジトリ関連WebHookをトリガーするという問題があります。
特定のブランチにプッシュすると、対応するWebHookが1つだけトリガーされることが予想されます。
私はこの問題を参照しているように見える2本の支柱(そのうちの一つが、2012年からである)が見つかりました:可能な解決策はref
を解析することであろう
をパラメータをwebhookリクエスト内で送信し、それに応じてアクションを実行するタイミングを制御します(まだその方向をチェックしていないので、実際には常に正しいブランチパス/名前を保持しています)。しかし、それは "遅すぎる"でしょう - すべてのWebHooksがその時までに起動されるようになるでしょう...
GitHubが何らかの形でこの動作を設定する方法を持っていないと思われます。
助けていただければ幸いです。
プッシュイベント用に1つのwebhooksを解析し、ブランチでフィルタリングします。また、各レポに別々のウェブフックがある場合は、各顧客プロジェクトをフォークすることもできます。 – osowskit