discourse-github プラグインの新しい機能、GitHub PR onebox 上のライブプルリクエストステータスインジケーターを発表できることを嬉しく思います!![]()
GitHub のプルリクエスト URL を投稿やチャットメッセージに貼り付けると、Discourse は PR の現在の状態を示す視覚的なステータスアイコンを表示し、Webhook 経由で自動的に最新の状態に保ちます。![]()
機能の概要
GitHub PR onebox は、プルリクエストの現在の状態を反映するステータスアイコンを表示するようになりました。
| ステータス | 色 | 説明 |
|---|---|---|
| 灰色 | PR がドラフトとしてマークされている | |
| 灰色 | PR がオープンでレビュー待ちである | |
| 緑 | PR がレビュアーによって承認された | |
| オレンジ | レビュアーが変更を要求した | |
| 紫 | PR がマージされた | |
| 赤 | PR はマージされずにクローズされた |
アイコンは GitHub のネイティブのアイコンと配色を使用しているため、GitHub を定期的に使用している人には馴染み深いものとなるでしょう。![]()
例
さまざまなステータスが実際にどのように表示されるかを示します。
ドラフト PR:

オープン PR:

承認済み PR:

変更要求あり:

マージ済み PR:

クローズ済み PR:

動作する場所 
ライブステータスは以下に表示されます。
- フォーラム投稿 — GitHub PR onebox を含むすべての投稿
- チャットメッセージ — Chat プラグインが有効になっている場合、チャット内の PR onebox もライブステータスを表示します

チャットの例:

注: インライン onebox(リンクが完全なプレビューではなくテキスト内に表示される場合)ではステータスアイコンは表示されません。
Webhook によるリアルタイム更新 
この機能の最も強力な点は、GitHub で変更が発生したときに PR のステータスが自動的に更新されることです。PR が開かれたり、クローズされたり、マージされたり、ドラフトへの変換/解除が行われたり、レビューが受け取られたりすると、Discourse はその PR の onebox を含むすべての投稿やチャットメッセージを自動的に更新します。
スマートなレビュー状況 
この機能は基本的なオープン/クローズステータスを表示するだけでなく、レビュー情報を取得して PR が承認されたか、変更要求があったかを判断します。複数のレビュアーをインテリジェントに処理します。
- 各レビュアーからの最新のレビューを採用する
- いずれかのレビュアーが変更を要求した場合、「変更要求あり」を表示する
- レビューが存在し、かつ変更要求がない場合にのみ「承認済み」を表示する
GitHub ステータステーマコンポーネントからの移行 
この機能は GitHub Status Indicators テーマコンポーネントを置き換えるものです。両者は互換性がなく、併用すべきではありません。
現在テーマコンポーネントを使用している場合は、以下を行う必要があります。
github-status-themeテーマコンポーネントを無効にして削除する- この新しい組み込み機能をサイト設定経由で有効にする
新しい実装は、テーマコンポーネントと比較していくつかの利点があります。
プライベートリポジトリで動作する(API 認証経由)
レビューからの承認/変更要求ステータスを含む
Webhook によるリアルタイム更新
チャットメッセージで動作する
テーマコンポーネントのメンテナンスが不要
はじめに 
セットアップ手順、設定オプション、技術的な詳細については、discourse-github プラグインのドキュメントを参照してください。
フィードバック 
この機能についてのご意見をお待ちしております!問題が発生した場合や改善の提案がある場合は、以下の返信で遠慮なくお知らせください。![]()