ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。

継続的インテグレーションについて

GitHub Actions で、GitHub リポジトリにカスタム継続的インテグレーション (CI) および継続的デプロイメント (CD) ワークフローを直接作成できます。

GitHub ActionsはGitHub Free、GitHub Pro、GitHub FreeのOrganization、GitHub Team、GitHub Enterprise Cloud、GitHub Oneで利用できます。 GitHub Actionsは、レガシーのリポジトリごとのプランを使っているアカウントが所有しているプライベートリポジトリでは利用できません。 詳しい情報については「GitHubの製品」を参照してください。

ここには以下の内容があります:

継続的インテグレーションについて

継続的インテグレーション (CI) とは、ソフトウェアの開発においてコードを頻繁に共有リポジトリにコミットする手法のことです。 コードをコミットする頻度が高いほどエラーの検出が早くなり、開発者がエラーの原因を見つけようとしてデバッグする必要性も減ります。 コードの更新が頻繁であれば、ソフトウェア開発チームの他のメンバーによる変更をマージするのも、それだけ容易になります。 開発者がコードの記述にばかり時間をとられ、エラーのデバッグやマージコンフリクトの解決にかける時間が少ないときに威力を発揮します。

コードをリポジトリにコミットするとき、コミットによってエラーが発生しないように、コードのビルドとテストを継続的に行うことができます。 テストには、コードの文法チェッカー (スタイルフォーマットをチェックする)、セキュリティチェック、コード網羅率、機能テスト、その他のカスタムチェックを含めることができます。

コードをビルドしてテストするには、サーバーが必要です。 ローカルでアップデートのビルドとテストを行ってからコードをリポジトリにプッシュする方法もありますし、リポジトリ での新しいコードのコミットをチェックするCIサーバーを使用する方法もあります。

GitHub Actionsを使用する継続的インテグレーションについて

GitHub Actionsを利用したCIでは、リポジトリ中のコードをビルドしてテストを実行できるワークフローが利用できます。 ワークフローはGitHubホストの仮想マシン、もしくはあなたが自分でホストするマシン上で実行できます。 詳しい情報については「GitHubホストランナーの仮想環境」及び「セルフホストランナーについて」を参照してください。

CIワークフローは、GitHubイベントが発生する (たとえば、新しいコードがリポジトリにプッシュされ) とき、または設定したスケジュールに応じて、あるいはリポジトリディスパッチwebhookを使用して外部イベントが発生するときに実行されるように設定することができます。

GitHubは、CIテストを実行すると各テストの結果をプルリクエストで提供するので、ブランチでの変更によってエラーが生じたかどうかを確認できます。 ワークフローのテストがすべて成功すると、プッシュした変更をチームメンバーがレビューできるように、またはマージできるようになります。 テストが失敗した場合は、いずれかの変更がその原因になっている可能性があります。

リポジトリでCIを設定すると、GitHubがリポジトリのコードを分析し、リポジトリにおける言語とフレームワークに基づいてCIワークフローが推奨されます。 たとえば、 Node.js を使用する場合、GitHubは Node.js パッケージをインストールしてテストを実行するテンプレートファイルを提案します。 GitHubによって提案されたCIワークフローテンプレートを使用しても、提案されたテンプレートをカスタマイズしてもかまいませんし、カスタムのワークフローファイルを作成してCIテストを実行することもできます。

提案された継続的インテグレーションテンプレートのスクリーンショット

1つのプロジェクトにCIワークフローを設定できるほか、GitHub Actionsを使用してソフトウェア開発のライフサイクル全体でワークフローを作成することもできます。 たとえば、アクションを使用してプロジェクトをデプロイ、パッケージ、またはリリースすることが可能です。 詳細については、「GitHub Actionsについて」を参照してください。

一般的な用語の定義については「GitHub Actionsの中核的な概念」を参照してください。

サポートされている言語

GitHubでは、各種の言語とフレームワークに応じてCIワークフローが提供されます。

GitHub で提供されるCIワークフローの詳細なリストは、actions/starter-workflowsリポジトリにあります。

ワークフロー実行の通知

GitHub Actionsに対するメールあるいはWeb通知を有効化すると、あなたが起動したワークフローランが完了すると通知されます。 この通知には、ワークフローランのステータス(成功、失敗、ニュートラル、キャンセルされたランが含まれます)が含まれます。 ワークフローランが失敗したときにだけ通知を受けるようにすることもできます。

リポジトリのActionsタブでワークフローランのステータスを見ることもできます。 詳細については、「ワークフロー実行の管理」を参照してください。

ワークフロー実行のためのステータスバッジ

ステータスバッジは、ワークフローが現在失敗しているかパスしているかを示します。 ステータスバッジを追加する一般的な場所は、リポジトリのREADME.mdファイル中ですが、任意の好きなWebページに追加できます。 デフォルトでは、バッジはデフォルトブランチ(通常はmaster)のステータスを表示します。 特定のブランチやイベントに対するワークフローの実行のステータスを、URL中のbranch及びeventクエリパラメータを使って表示することもできます。

example status badge

詳細は「ワークフローの設定」を参照してください。

参考リンク

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください