第11章 Red Hat Developer Hub イベントモジュールの設定
イベントモジュールをスケジュールされた更新と併用して、外部システムに変更が発生するたびに GitHub ユーザーまたはカタログエンティティーが更新されるようにします。これは開発者プレビュー機能です。
開発者プレビュー機能は、Red Hat ではいかなる形でもサポートされていません。また、機能的には完全ではなく、実稼働環境に対応していません。開発者プレビュー機能を実稼働ワークロードまたはビジネスクリティカルなワークロードには使用しないでください。開発者プレビュー機能は、Red Hat 製品に追加される可能性がある機能をいち早く提供することを目的としています。お客様はこの機能を使用してテストし、開発プロセス中にフィードバックを提供できます。開発者プレビュー機能は、ドキュメントが提供されていない場合があり、随時変更または削除される可能性があります。また、限定的なテストしか行われていません。Red Hat は、関連する SLA なしで、開発者プレビュー機能に関するフィードバックを送信する方法を提供する場合があります。
Red Hat 開発者プレビュー機能のサポート範囲の詳細は、開発者プレビューのサポート範囲 を参照してください。
11.1. GitHub のイベントモジュールの設定 リンクのコピーリンクがクリップボードにコピーされました!
RHDH GitHub Discovery 機能および GitHub 組織データで使用するためにイベントモジュールを設定する方法を学習します。これは開発者プレビュー機能です。
開発者プレビュー機能は、Red Hat ではいかなる形でもサポートされていません。また、機能的には完全ではなく、実稼働環境に対応していません。開発者プレビュー機能を実稼働ワークロードまたはビジネスクリティカルなワークロードには使用しないでください。開発者プレビュー機能は、Red Hat 製品に追加される可能性がある機能をいち早く提供することを目的としています。お客様はこの機能を使用してテストし、開発プロセス中にフィードバックを提供できます。開発者プレビュー機能は、ドキュメントが提供されていない場合があり、随時変更または削除される可能性があります。また、限定的なテストしか行われていません。Red Hat は、関連する SLA なしで、開発者プレビュー機能に関するフィードバックを送信する方法を提供する場合があります。
Red Hat 開発者プレビュー機能のサポート範囲の詳細は、開発者プレビューのサポート範囲 を参照してください。
前提条件
-
app-config.yamlファイルに GitHub 統合認証情報を追加しました。 -
app-config.yamlファイルで、schedule.frequentlyを 24 時間などの長い期間として定義しました。 - GitHub Discovery のみ: GitHub Discovery が 有効になっています。
- GitHub 組織データのみ: ユーザーの取り込みによる GitHub 認証 が有効になっています。
手順
次のように、GitHub イベントモジュールを
dynamic-plugins.yaml設定ファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow githubのイベントを受信するための HTTP エンドポイントを作成するには、app-config.yamlファイルに次のコードを追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要Webhook の配信を検証する ための Webhook シークレットトークンを追加して、ワークフローを保護します。
次の仕様で GitHub Webhook を作成します。
- Github Discovery Events の場合: プッシュ、リポジトリー
- Github 組織データイベントの場合: 組織、チーム、メンバーシップ
- Content-type: application/json
Payload URL:
https://<my_developer_hub_domain>/api/events/http/github注記ペイロード URL は、HTTP エンドポイントを設定した後に公開される URL です。
検証
ログをチェックして、GitHub Webhook からイベントを受信するために http エンドポイントが正常に設定されたことを確認するエントリーを探します。
- 正常に設定された HTTP エンドポイントのログの例
{"level":"\u001b[32minfo\u001b[39m","message":"Registered /api/events/http/github to receive events","plugin":"events","service":"backstage","timestamp":"2025-11-03 02:19:12"}{"level":"\u001b[32minfo\u001b[39m","message":"Registered /api/events/http/github to receive events","plugin":"events","service":"backstage","timestamp":"2025-11-03 02:19:12"}Copy to Clipboard Copied! Toggle word wrap Toggle overflow
GitHub Discovery のみ:
Webhook を設定したリポジトリー内の
catalog-info.yamlファイルを追加、変更、または削除して、GitHub プッシュイベントをトリガーします。このイベントの記録は、RHDH インスタンスの Pod ログに表示されます。catalog-info.yamlファイルの変更を含むログの例{"level":"\u001b[32minfo\u001b[39m","message":"Processed Github push event: added 0 - removed 0 - modified 1","plugin":"catalog","service":"backstage","span_id":"47534b96c4afc654","target":"github-provider:providerId","timestamp":"2025-06-15 21:33:14","trace_flags":"01","trace_id":"ecc782deb86aed2027da0ae6b1999e5c"}{"level":"\u001b[32minfo\u001b[39m","message":"Processed Github push event: added 0 - removed 0 - modified 1","plugin":"catalog","service":"backstage","span_id":"47534b96c4afc654","target":"github-provider:providerId","timestamp":"2025-06-15 21:33:14","trace_flags":"01","trace_id":"ecc782deb86aed2027da0ae6b1999e5c"}Copy to Clipboard Copied! Toggle word wrap Toggle overflow
GitHub 組織データのみ:
- 新しく追加されたユーザーとチームは RHDH カタログに表示されます。