CI/CD
読み
シーアイ・シーディー
意味
- CI(継続的インテグレーション)でコードの統合とテストを自動化しCD(継続的デリバリー)で本番環境への配信まで自動化する一連のフロー
- 開発からリリースまでの手作業を最小化しコード変更を迅速かつ安全に本番へ届ける開発パイプライン
- 品質検証と配信のサイクルを高速化しビジネス価値を素早く提供するDevOpsの中核プラクティス
比喩
工場の自動化ラインのようなもの。原材料(コード)を入れると、検査して完成品(アプリ)として出荷まで自動で行う。
語源
Continuous Integration / Continuous Deployment(またはDelivery)。DevOps文化の象徴的用語
例文
- GitHub ActionsでCI/CDパイプラインを構築しmainブランチへのマージで自動的に本番デプロイした
- CI/CDで品質チェックとリリースを両立し1日10回以上の本番更新を実現した
- E2Eテストが通らない場合はデプロイをブロックしCI/CDで安全性を担保した
よくある勘違い
- CI/CDを導入すれば手動作業がゼロになると考えること→初期設定やパイプライン保守は人が設計する必要がある
- CDをContinuous Deploymentだけと捉え承認フローを無視すること→Continuous Deliveryは人の承認を挟む場合もある
- CI/CDツールがあれば自動的にテストが整備されると思い込むこと→テストコード自体は開発者が書く