CIツールの管理コストを削減し、 開発者にとっても快適な環境を実現
個人開発者にも親しまれているCircleCIは 導入も容易
CIツールの管理コストが大きな課題
個人間やグループ間でのチャット、 無料通話ができるコミュニケーションアプリ 「LINE」に加え、 ニュース、 決済、 マンガなど多数のサービスを開発、 運用する LINE株式会社。 スピード感のあるサービス展開を支える開発者数は2000名を 優に超え、 ジョブは3000以上、 1日のビルドは4500〜6000回と、 生産性の向上 にはCI/CDが必要不可欠となっている。
以前からオープンソースのCIツール「Jenkins」を使用しているが、 数多くの開発者を抱える同社ではCIツ ールの管理コストが非常に大きくなってしまう。 「 ビルドを行うプログラミング言語によってはOSに依存す るライブラリをインストールするため、 CIツールのルート権限が必要となります。 セキュリティ上、 エンジ ニアにルート権限を渡せないのでCIツールの管理者にインストールを依頼する必要がありました。 」 (石島氏)
言語ごとのライブラリのほか、 CIに必要な様々なプラグインも管理者がインストールを行うが、 インスト ールにとどまらずバージョンアップも必要となる。 あるプラグインのバージョンアップには、 依存関係の ある別のプラグインもバージョンアップしなければならず、 管理作業が大きな負荷となってしまう。 「 以 前、 Jenkinsにインストールしているプラグインを数えたら220種類を超えていました。 プラグインを減ら したいのですが、 ユーザーからの要望もあり、 なかなか減らせないのが実情です。 そのため、 これだけの 数のプラグインのバージョンアップと動作確認を行う必要があり、 かなりの時間を費やしています。 」と北 村氏は語る。 また、 「 CircleCIの検討時期においては、 エンジニアの数が大きく増え始めるのに伴って、 CIツールのプラグインインストールやトラブルシューティングなど、 管理者の作業も大きく増えていまし た。 管理者が行っていた作業をエンジニアができるようにすることで管理者のコストを下げたい、 分散し たいという要望がありました。 」と石島氏は話す。
CircleCIは管理コストを軽減し、 開発者 にとっても快適な環境を実現
管理者のコストが課題である同社にとってCircleCIの特長が解決とな る。 CircleCIはDockerコンテナを起動し、 そこでテストを行う。 言語ラ イブラリなどの環境もDockerイメージで構築すれば良い。 その設定は 開発者が自らCircleCIの設定ファイルに記述するだけなので、 管理者 の作業も必要なければ、 開発者から管理者にインストールやバージョ ンアップを依頼するコミュニケーションも必要ない。 また、 「従来のCIツ ールではユーザー権限の設定作業が必要ですが、 CircleCIではGitHub Enterpriseの権限を引き継げるのでユーザー管理も楽になりました。 」 (石島氏)
管理者の視点だけではなく、 ユーザーである開発者の視点から見ても、 CircleCIは利便性が高いと北村氏は語る。 「 YAML形式のテキストベー スで設定できるので他のツールに比べて便利です。 また、 従来のツール では古いテストのキャッシュが別のテストに悪影響を及ぼして失敗して しまうということがありましたが、 CircleCIでは環境が分離されていて クリーンなので、 CIのトラブルが大きく減りました。 そして、 とても便利 なのがビルド環境へのSSHログイン機能です。 開発者が自らトラブルシ ューティングをできるので作業が大いにはかどります。 」 (北村氏)
個人開発者にも親しまれているCircleCIは 導入も容易
CircleCIは管理者の管理コストを減らし、 ユーザーである開発者に 快適なCI環境を提供できているほか、 導入もスムーズだったようだ。 CircleCIは無償のFreeプランを提供しており、 多くの個人開発者が有償 プランと変わらない機能を利用している。 また、 CircleCIを導入検討し ている企業が少人数のチームやプロジェクトでFreeプランを試験的に 使い始めるケースも多い。
「Freeプランがあることによってすでに個人でもCircleCIの経験を持っ ているユーザーが多く、 教育コストが少ないです。 また、 メジャーなツー ルということで、 導入に向けた社内の説得もしやすかったです。 」 (石島氏)
「従来のツールでは古いテストのキャッシュが別のテストに悪影響 を及ぼして失敗してしまうということがありましたが、 CircleCIでは 環境が分離されていてクリーンなので、 CIのトラブルが大きく減りま した。」
北村 壮大 氏 | Engineering Infrastructure室 | LINE
LINE 株式会社について
LINE株式会社は、コミュニケーションアプリ「LINE」を機軸として、コミュニケーション・コンテンツ・エンターテイメントなどモバイ ルに特化した各種サービスの開発・運営・広告事業に加え、Fintech事業、AI事業を展開しています。 ミッションに「CLOSING THE DISTANCE」を掲げ、世界中の人と人、人と情報・サービスとの距離を縮めることを目指しています。 LINE 株式会社では、エンジニアを積極的に採用中です。こちらの募集情報をご覧ください。 https://linecorp.com/ja/career/ja/all