サード・パーティCIツールとのより深い連携を実現する新機能「Checks API」のパブリックベータ版を公開

Image of Jason Warner

2018年1月だけで、60万を超えるリポジトリがビルドステータスを受信しています。これは前年比50%以上の増加であり、また、ステータスに含まれる情報はより詳細になっています。

アジャイル開発を実現するにはビルドステータス情報を把握し、必要なアクションを迅速に取ることが不可欠です。このようなニーズに応えるため、GitHubはChecks APIのパブリックベータ版を公開しました。

今回公開されたChecks APIを使用することで継続的インテグレーション(CI)、lint、受け入れテストのための高度なツールの構築が可能となり、よりアジャイルな開発を実現します。現時点ではGitHub REST APIに対応していますが、近日中にGraphQLへの対応を予定しています。

新機能:Checks API

従来はインテグレーション実施後にビルドの成功/失敗ステータスだけがGitHubのユーザーインターフェース上に表示されていましたが、Checks APIの導入によりステータスの詳細が表示され、必要に応じてビルドプロセスの再実行もGitHubのユーザーインターフェイス内で完結できるようになりました。

Check API UI

ビルドステータスはPull Requestにある「 Checks 」タブから確認できます。ステータスの詳細はPull Requestの該当コードの横に表示されるため、失敗となった理由を即座に特定、対処できるようになりました。

Checks APIの詳細はこちら

これまでの数週間、複数のパートナー企業と協業してChecks API機能の調整を行ってきました。以下では、すでにChecks APIパブリックベータと連携できること確認済みのアプリを紹介したいと思います。

Microsoft Visual Studio App CenterやOutlookとの連携

マイクロソフトは、昨年最多のコミュニティ参加者数を記録したVisual Studio Codeや昨年最も急成長を遂げた言語の1つであるTypeScriptなど、GitHub上に多数のオープンソースプロジェクトをホストしているだけでなく、AzureのMobile CIサービスを始めとするAzureのDevOpsサービスとGitHubのインテグレーションにおいても協業しています。Checks APIのリリースにより、App Centerを利用しているユーザーに対し、GitHub上でモバイルプロジェクトが検知されるとMobile CIをセットアップするよう通知できるようになりました。

さらに、コミットごとにビルドを自動化し、クラウド内の実際のデバイスでアプリをテストし、クラッシュおよび分析データを用いて使用状況を監視するなど、一連の作業をGitHubのインターフェイス内で直接確認できるようになりました。

App Center

また、今後はAdaptive Cardsを利用しGitHubとMicrosoft Outlookも統合する予定です。これにより、Outlookの受信ボックスから直接Issueへコメントしたり、Pull Requestをマージできるようになります。

Outlook UI

Travis CIとの連携

クラウドサービスとして提供するCIサービスにおいて世界トップレベルのプロバイダであるTravis CIは、7年以上にわたりオープンソースおよびプライベートプロジェクトのビルドとテストを支援しています。同社は先日GitHub Appsの対応を済ませ、プロジェクトのブランチおよびPull Requestのビルド結果をチーム内で共有するツールとして、Checks APIを採用しました。これにより、ビルドのステージ、ジョブおよびそれらの結果、そして各々に関連付けられている設定も含め、プロジェクトの運用の全体像をGitHubから直接把握できます。また、Checks APIのUIからビルドを再実行することも可能です。

Travis CIとChecks APIの連携についての詳細はこちら

CircleCIとの連携

CircleCIからGitHubプロジェクトをフォローすると、CircleCIの自動生成のビルドとテスト手順、シンプルな拡張性により、最初のビルドを瞬時にセットアップが可能です。余計なメンテナンスを不要とすることで、テストおよび開発サイクルのスピードを向上させます。CircleCIとChecks APIの連携は現在開発中です。

本日の発表は始まりに過ぎません。
私たちは、アプリケーションのオープンエコシステムに簡単にアクセスできるようにすることで、迅速かつ柔軟性の高いワークフローを作り出し、最も重要な業務に集中できるようになると考えています。みなさんがGitHubを最大限に活用し、GitHubプラットフォームとシームレスに機能する有益でパワフルなツールを構築できるよう、これからもさまざまな方法を提供していきます。