TOPCloud > クラウドベースのCI/CDプラットフォーム、選択のポイントは...

Cloud

クラウドベースのCI/CDプラットフォーム、選択のポイントは(上)

2021/06/28

Martin Heller InfoWorld

クラウド型のCI/CDの特徴

 CI/CDプラットフォームの運用形態はいくつかある。アプリケーションやデータを自社のファイアウォールの中に置いておくことを義務づけられている企業の場合は、オンプレミスでの運用が現実的な選択肢だ。その場合、プラットフォームの維持管理にあたる専任のチームが必要になる点や、サーバーへの設備投資が生じる点がデメリットとなる。

 一方、クラウドの利用が認められている場合は、一般にはクラウド型のCI/CDプラットフォームを選んだ方がよい。クラウドでのホスティングなら、適切な水準の費用を支払いながら、オンボーディング、インフラの保守、セキュリティ対応、サポート、CI/CDソフトウエアのメンテナンスなどをサービスとして受けられる。ソースコードのリポジトリもクラウド上にある場合、そちらとの連携もスムーズになることが多い。開発者やテスターが地理的に分散している場合、ファイアウォールの内側にあるサーバーのリポジトリより、クラウド上のリポジトリの方が、使い勝手がよいことが多い。

 また、オンプレミスとクラウドを組み合わせたハイブリッド型でCI/CDを利用する手もある。最近のCI/CD製品には、Kubernetesクラスタのコンテナで動くものもあり、オンプレミスでもクラウドでもうまく対応できる。ハイブリッド型の場合、開発者の物理的な場所や、開発インフラで利用する各種サーバーのネットワーク上の場所を踏まえて、各要素を最適な場所に配置できる。

CI/CDとリポジトリの連携

 前述のとおり、CIではリポジトリのメインブランチにチェックインが完了した状態が到達点となる。CIやCDにとってリポジトリは不可欠な存在だ。リポジトリは、チェックインやテストプロセスの目的地であるだけでなく、CIやCDのスクリプトや設定ファイルの保存場所としてもよく使われる。CI/CDプラットフォーム自体にスクリプトなどのファイルを保存できる場合も多いが、一般には、CI/CDツールとは別のバージョン管理の配下に置く方がよい。

 ほとんどのCI/CDツールはGitとの連携に対応している。GitHub、GitHub Enterprise、GitLab、Bitbucketと直接連携できるツールや、SubversionやMercurialに対応しているツールもある。

翻訳:内山卓則=ニューズフロント

↑ページ先頭へ