からくりブログ

株式会社からくり社員のブログです

CIについて

CI (Continuous Integration) を扱う機会があったので紹介したいと思います。

実装を修正したり、実装を追加したときにコミットしリポジトリにpushすることがあったとします。 そのときにCIはリポジトリに用意しておいたテストコードを実行し、テスト結果を出力してくれます。もちろんテストコードは作成して用意しておかないといけません。

pushするたびにテストコードを実行するので、バグを発見しやすいと思います。
自分が担当している機能の修正を行った結果、知らないうちに他の機能に影響を与えていたことを発見できるかもしれません。

有名なCIにJenkinsがありますが、扱ったことがあるのは
Circle CIとGitHub Actionsなのでこの2つを紹介します。
どちらもパブリックリポジトリであれば無料で使用できる特徴があり、GitHubと連携することができます。

まずはCircleCIから
Circle CIへはGitHubのアカウントでログインします。
実行されると以下のような画面が表示されます。
全てのテスト結果がOKであればSUCCESS、1つでもNGであればFAILEDと表示されます。
実行内容の詳細を確認すると、以下のような画面が表示されます。
どのテストファイルでどんなエラーが起きたのかを確認できます。
エラー箇所や内容の共有ができるので、発生したエラーはどの変更を行ったときに発生したのかを把握することが可能です。

次はGitHub Actions
GitHub ActionsはGitHubの機能の1つなのでGitHubアカウントで使用できます。 実行されると以下のような画面が表示されます。
全てのテスト結果がOKであればチェックマーク、1つでもNGであればバツマークが表示されます。
実行内容の詳細を確認すると、以下のような画面が表示され、どのテストファイルでどんなエラーが起きたのかを確認できます。 しかし、Circle CIと違い、一目でわかるような表示ではなく、結果を確認していく必要があります。

料金について
どちらもプライベートリポジトリで使用するには料金が必要になる可能性が出てきます。
月に決められた時間は無料で使用することができるので、なるべく無料分で済ませたいところです。

・Circle CI
Circle CIの料金
毎週2500クレジットが付与される
Linux/CPU2/メモリ4GB 1分あたり10クレジット
毎月約1000分無料で使用できる
25000クレジットを15ドルで購入

・GitHub Actions
GitHub Actionsの料金
毎月2000分無料で使用できる
毎分料金 0.008ドル

設定ファイルの記載方法は次回紹介したいと思います。
少しでも興味を持っていただけたら幸いです。

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>