現在、国内でのデジタルトランスフォメーションが以前より重視されていますが、デジタル化が進むにつれソフトウェア開発にも変化が現れています。その変化に対応する為、「CIツール」が開発者に注目されています。CIツールを導入・活用することにより、バグ修正時間の短縮はもちろん、ソースコードの早期チェック、不具合等の早期発見、コード品質の向上が全て実現します。今回は、国内の開発者の方々にも参考になる話題のCIツールオーケストレーションツールをご紹介していきますので是非 CI 導入の際に参考にして下さい。



CIツールとは?CIが解決する課題と開発効果について

CI(継続的インテグレーション・CI/CD)ツール(CI/CDツール)には多様な効果があります。代表的なメリットとしては、CIツールを導入することによって起きる、コードなどに対する不具合の発見、修正に対する時間の短縮、コードそのものの品質向上、開発作業の効率アップなどが代表的なメリットとして知られています。

CIツールの環境図

その他のCI導入メリットとしては、以下の効果も挙げられます。

  • テストの自動化
  • ビルドの自動化
  • 加速できる開発
  • 工数の削減
  • 運用のルール化
  • 単位テスト
  • 品質がいいコードの開発

2023年話題のCIツール一覧

それでは、現在注目されているCIツール「CircleCI」、「Jenkins」、「Gitlab」や「GitHub Actions」「Bitrise」をご紹介していきます。


CircleCI CIツール

CircleCI(サークルCI)はクラウド、オンプレで利用できるCIツールであり、GitLabクラウドバージョン、GitHubBitbucketGitとなどとのバージョン管理ツールと連携し使用できるCIツールです。また、CircleCIは他社のCIツールとは違い日本語のドキュメントチュートリアル、企業に対するサポートも豊富であり、現在国内の開発者や企業より注目を浴びています。また、CircleCIはカスタマイズが可能で Private OrbやランナーCircleCI ServerなどとGitHub Enterprise Serverと組み合わせて使用も可能です。

デモを見る


CircleCIのメリット

CircleCIは現在世界中30,000の企業をサポートしています。代表的なメリットとしてはジョブ実行の高速、キャッシュ、DLC、カスタマイズできるパイプラインなど多様のメリットがあります。また、他にも以下のメリットが CircleCI に存在します。

  • SSHデバッグ
  • ジョブの高速化
  • セルフホストランナー
  • Armコンピューティングリソース
  • API
  • CLIでローカルにアクセス
  • Orbで利用できる連携サービス
  • リソース機能の充実性
  • ダッシュボードでアクセスできる多様な情報
  • 安心できる日本語サポート

その他にもテストの自動化、ビルドの自動化、デプロイの自動化や単位テスト、E2Eテスト、各種通知ツールとの連携が全てCircleCIのCIツールで実現します。

さらに詳しく

Jenkins CI

JenkinsもオープンソースなCIツール として国内でも多くの開発者の方々に愛用されているツールです。Jenkinsには1,600以上の豊富なプラグインが存在します。

Jenkinsの導入メリットとして以下のような例が挙げられます。

  • プラグイン
  • 容易な導入
  • トリガーの多様性

現在のところ、オープンソース版のJenkinsにはオフィシャルな日本語サポートやドキュメントは存在しません。しかし、多くの開発者が既に利用している為、情報等はWeb上で取得することができます。運用ルールも必要となりますので、導入する際には必ず運用ルールを作成する必要があります。

Jenkinsの公式サイトでさらに詳しく(英語のみ)

GitLab CI/CD

GitLabも現在話題の一種のオープンソースなCIツールです。ただし、GitLab にはプロジェクト計画やソースコードの管理など、CI/CD以外の機能も含まれています。GitLabはSaaS DevSecOpsプラットフォームとしても有名ですので、ソースコードの管理から課題の追跡、コード統合、CI/CD、開発と運用のサイクル全体を管理することができます。

以下に主なGitLabのメリットをまとめましたので参考にして下さい。

  • マルチ環境、プラットフォーム、言語に対応
  • バージョン管理システムを内包
  • SaaSまたは、オンプレでの利用

GitHub Actions

GitHubが提供している GitHub Actionsも話題のCIツールと言えるでしょう。GitHub Actions は、ビルド、テスト、デプロイなどのCI/CDワークフローを作成、実行ができるツールです。GitHub上のイベントをトリガーにして実行することができるので、GitHub内からソフトウェア開発ワークフローを自動化するのに適していまいす。

GitHub Actionsのメリットとしては以下が挙げられます。

  • 主要なOSに対応しているので、ビルドやテストが容易にできる
  • さまざまな言語に対応
  • GitHubにアカウントやレポジトリがあれば、他社のCIサービスと別途契約しなくても良い

CircleCIとGitHub Actionsの比較はこちら

Bitrise

Bitriseも話題のCI/CDツールの一つですが、他ツールと比較すると、iOS, Android, Flutter, React Nativeなど、モバイルアプリ開発においてのCI/CDツールとして注目されています。

また、Bitriseの代表的なメリットとしては、以下が挙げられます。

  • 充実したモバイルアプリ開発環境
  • ワークフローをGUIで設定できる
  • 初期設定が比較的簡単

CircleCIとBitriseの比較はこちら

CIツールの導入で注意したいポイント

CIツールの導入には、自社の要件を明確にした上で、ツールの選択をすることを一番お勧めします。また、海外製のCIツールを使用する場合、日本語のドキュメントや資料、サポートが重要であれば、それらが提供されているかを確認しましょう。

この理由としては、社内でCIツールの設定や利用上の不具合が生じた場合に、対応が無い、ドキュメントが英語で理解できない、などといった問題が発生する可能性があるためです。結果として、日本語サポートの有無により、本格的なCI/CDの導入、運用が軌道に乗るまでに掛かる時間も変わってきますので、ツール選択の際にはサポート対応可能な言語も重視しましょう。

関連記事