問題タブ [github-webhook]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jenkins - Jenkins と Webhook を使用した GitHub API クォータ
GitHub からの 5000 の API クォータ、特に Jenkins の使用を回避するための提案があるかどうか疑問に思っています。
文脈上、~300 のリポジトリと ~100 の GitHub ユーザーがいます。私たちは当初、ほとんどのジョブで組織/リポジトリ スキャンを実行していましたが、Jenkins で実行されるものが増えるにつれ、一貫してクォータを超え始めました。スキャンの頻度を減らしましたが、問題はまだ残っていました。
次に Webhook を実装しましたが、Webhook は実際には適切なジョブをトリガーするのではなく、リポジトリ スキャンのトリガーとして機能することがわかりました。オフピーク時は、これはスキャンよりも確実に優れていますが、日中は潜在的に悪化する可能性があります.
質問: 他の人がこの問題を解決するにはどうすればよいですか? 設定に欠けているものはありますか? それとも、Jenkins でジョブをトリガーする Git イベントの概念をすぐに削除する必要がありますか?
jenkins - github リリースでのみ jenkins パイプラインを構築する方法
リリースを作成できるリポジトリがあります。私はジェンキンスをセットアップしていますが、ジェンキンスはネットワーク外からの通信を制限するファイアウォール内でホストされているため、github-webhook は機能しません。また、リバース プロキシを機能させることは、私にとっては少し難しい作業です。github Webhook が json ペイロードを送信し、リリースに基づいてそれを修飾できることを理解しています。しかし、前述したように、jenkins と github は相互に通信できないため、これは機能しません。
したがって、この解決策を試しました。ジェンキンが構築するブランチまたはタグをフィルタリングします。以下は私が試したもので、すべてうまくいきませんでした。ビルドを実行するたびに、ジェンキンスはビルドするだけです。
以下の正規表現も試しましたが、
d の代わりに [0-9] も試しました。それは毎回それを構築します。
何か不足していますか?それともジェンキンスの仕組みですか?ビルドを特定のタグまたはリリースでのみ実行するように修飾していますが、今すぐビルドをクリックすると、毎回実行されますか?
私の要件は非常に単純です。リリースがマスターの背後にある「n」コミットであっても、作成したリリースでのみjenkinsビルドを実行したい。どうすればこれを達成できますか?