CI/CD
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2026/08/05 07:50 UTC 版)
CI/CD(またはCICD)とはソフトウェアエンジニアリングにおいて、継続的インテグレーションと継続的デリバリーまたは継続的デプロイのいずれかを組み合わせた継続的デプロイを指す[1][2][3]。これらはまとめて継続的開発または継続的ソフトウェア開発と呼ばれることもある[4]。
CI/CDは、アプリケーションの構築、テスト、および展開の自動化を実施することにより、開発および運用アクティビティとチームの間のギャップを埋める。現代のDevOpsプラクティスには、継続的開発、継続的テスト、継続的インテグレーション、継続的デプロイ、および開発ライフサイクル全体にわたるソフトウェアアプリケーションの継続的モニタリングが含まれる。 CI/CDプラクティスまたはCI/CDパイプラインは、現代のDevOpsオペレーションのバックボーンを形成する。
コンポーネント
- 継続的インテグレーション(Continuous Integration)
- 複数の小さな変更を頻繁にメインブランチにマージすること。
- 継続的デリバリー(Continuous Delivery)
- 短いサイクルで高速かつ高頻度にソフトウェアを生産し、信頼性の高いソフトウェアをいつでもリリースできるようにすること。デプロイを決定した際には、シンプルで再現性のあるデプロイプロセスを伴う。
- 継続的デプロイ(Continuous Deployment)
- 新しいソフトウェア機能の自動ロールアウトのこと。
これら3つのプロセスが順番に発生する場合、「CI/CDパイプライン」として説明されることがある[5]。
目的
CI/CDは、アプリケーションのビルド、テスト、およびデプロイにおける自動化を強制することにより、開発および運用活動とチーム間のギャップを埋める。CI/CDサービスは、開発者が行った差分コードの変更をコンパイルし、リンクしてソフトウェア成果物にパッケージ化する[6]。自動化テストはソフトウェアの機能を検証し、自動化デプロイサービスはそれらをエンドユーザーに提供する[7]。その目的は、早期の欠陥発見を増やし、生産性を向上させ、より迅速なリリースサイクルを提供することである。このプロセスは、新しいバージョンをデプロイする前にソフトウェアアップデートの集合を1つの大きなバッチに統合していた従来の手法とは対照的である。
現代のDevOpsの実践には、ソフトウェアアプリケーションの開発ライフサイクル全体を通じた以下のものが含まれる。
- 継続的開発
- 継続的テスト
- 継続的インテグレーション
- 継続的デリバリー
- 継続的デプロイ
- 継続的モニタリング
CI/CDの実践、またはCI/CDパイプラインは、現代のDevOps運用のバックボーンを形成している。
クラウドシステムのベストプラクティス
以下のプラクティスは、特にクラウドでホストされているシステムにおいて、CI/CDパイプラインの生産性を向上させることができる[8][9][10]。
その他
コーポレートコミュニケーションの文脈では、 CI / CDはコーポレートアイデンティティと企業デザインの全体的なプロセスを指すこともある[11]。
関連項目
- 継続的インテグレーション (CI)
- 継続的デリバリー (CD)
- 継続的デプロイ (CD)
脚注
- ↑ Irani, Zubin (2018年3月28日). “5 common pitfalls of CICD -- and how to avoid them”. InfoWorld (英語). 2017年12月21日閲覧.
- ↑ Heller, Martin (2015年7月20日). “Continuous integration is not always the right answer. Here's why”. TechBeacon (英語). 2017年12月21日閲覧.
- ↑ Atlassian (2017年4月14日). “Continuous integration vs. continuous delivery vs. continuous deployment” (英語). Atlassian. 2019年4月4日閲覧。
- ↑ “What is Continuous Development and How Does It Work?”. Synopsys. 2026年8月5日閲覧。
- ↑ “What is CI/CD?”. Red Hat (2025年6月10日). 2026年8月5日閲覧。
- ↑ Rossel, Sander (2017) (英語). Continuous Integration, Delivery, and Deployment. Packt Publishing. ISBN 978-1-78728-661-0
- ↑ Gallaba, Keheliya (2019). “Improving the Robustness and Efficiency of Continuous Integration and Deployment” (英語). 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME). IEEE. pp. 619-623. doi:10.1109/ICSME.2019.00099. ISBN 978-1-7281-3094-1
- ↑ (英語) Serverless Architectures on AWS. Manning. (2016). ISBN 978-1617295423
- ↑ (英語) Pipeline as Code Continuous Delivery with Jenkins, Kubernetes, and Terraform. Manning. (2021). ISBN 9781638350378
- ↑ Humble, Jez; Farley, David (2010) (英語). Continuous Delivery Reliable Software Releases Through Build, Test, and Deployment Automation. Pearson Education. ISBN 9780321670229
- ↑ “Corporate Identity” (英語). IONOS Startupguide. 2020年7月22日閲覧。
外部リンク
- What is CI/CD - all you need to know - Maciej Manturewicz
- Sane, P. (2021). “A Brief Survey of Current Software Engineering Practices in Continuous Integration and Automated Accessibility Testing” (英語). 2021 Sixth International Conference on Wireless Communications, Signal Processing and Networking (WiSPNET). pp. 130-134. doi:10.1109/WiSPNET51692.2021.9419464. ISBN 978-1-6654-4086-8
- El Khalyly, B.; Belangour, A.; Banane, M.; Erraissi, A. (2020). “A new metamodel approach of CI/CD applied to Internet of Things Ecosystem” (英語). 2020 IEEE 2nd International Conference on Electronics, Control, Optimization and Computer Science (ICECOCS). pp. 1-6. doi:10.1109/ICECOCS50124.2020.9314485. ISBN 978-1-7281-6921-7
CI/CD
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/11 15:58 UTC 版)
DevOpsの手法でも中核となっているコンセプト。ソフトウェア システム開発における開発サイクルの短縮、開発の迅速化、信頼性の高いリリースができる継続的インテグレーションおよび継続的デプロイを導入する。多くのツールではパイプラインと呼ばれる機能において、反復されるプロセスでなおかつ再利用可能な手順を定義できる。
※この「CI/CD」の解説は、「MLOps」の解説の一部です。
「CI/CD」を含む「MLOps」の記事については、「MLOps」の概要を参照ください。
- ci/cdのページへのリンク