Visual Studio App CenterでGitHubのPull Requestを効率よく対応しよう
とあるPull Request画面
Pull Request画面で以下の赤枠の文言を見かけたことはありませんか?
これは継続的インテグレーションがセットアップされていませんよ、という情報です。 「are available」のリンクをクリックするとGitHub MarketplaceのCIカテゴリに遷移します。
GitHub Marketplaceの CI カテゴリ
GitHubのMarketplaceで提供されているCIツールが表示されます。
ここではApp Centerを選択します。するとApp CenterのGitHub Appページが表示されます。
App CenterのGitHub App
このページの下部に以下のような画面があります。
プランを選ぶところですが、ここではFreeを選択して「Install it for free」をクリックしてインストールしましょう。
App CenterのGitHub Appを反映させるリポジトリを選択します。 リポジトリを選択した場合は対象のリポジトリに対してVSAppCenterのプロジェクトを作成します。
VSAppCenterのプロジェクト作成・ビルド設定
対象OSとPlatformを選択しプロジェクトを作成します。
その後、ビルド設定が開くのでビルド設定を実施します。
ビルド設定画面の「Save」ボタンを選択し設定を保存してください。 これでVSAppCenterとGitHubとの連携ができました。
GitHubのPull Request画面での確認
設定したプロジェクトと関連付けたGitHubリポジトリへ新たにPull Requestを投げてください。PullRequestの内容をVSAppCenterがビルド開始し、以下のようにVSAppCenterでビルドしている状態が見れるようになりました。
ビルドやテストが完了すると以下のように表示が変わります。
「Details」のリンクからVSAppCenterの画面へ遷移して詳細なビルドログを見ることが可能です。
Checks APIについて
なぜGitHubでCIサービスの詳細なタスク状況が分かるようになったかというとGitHubからChecks APIというものが提供されたかです。 従来はインテグレーション実施後にビルドの成功/失敗ステータスだけが表示されていたのですが、本APIによりステータスの詳細が表示され、必要に応じてビルドプロセスの再実行もGitHubのユーザーインターフェイス内で完結することができるようになります。 どこからでも利用できるAPIではなく、GitHubAppが利用できるAPIのようです。 現在対応しているのは以下の4つのようです。
最後に
Pull Requestをすぐにビルド・テストすることでレビューアの負担が軽減し、開発の生産性が上がるのではないでしょうか。 また、Checks APIにより色々なCIサービスとGitHubが繋がることで、GitHubがますます便利になることを期待しています。