CI/CDとは
ソフトウェア開発におけるビルドやテスト・デリバリー・デプロイメントを自動化し継続的に行うアプローチを指す名称。
CIとは
継続的インテグレーション。
1.コードの統合
定期的に自分の作業したコードを共有リポジトリに統合すること。
2.自動ビルド
コードがリポジトリに統合されるたびに、自動的にビルドが実行される。
3.自動テスト
ビルドが成功したら、自動テストが実行される
4.結果のフィードバック
テストの結果やビルドの状態が即座に開発者にフィードバックされる。
5.一貫性の確保
共通の基準でコードを統合しテストするため、コードの品質や一貫性が保たれる。
例としてはJenkins,Travis CI,Circle CI,GitHub Actionsがある。
これらのツールにより、コードの統合とテストを自動化し開発プロセスの高速化と品質向上に大きく貢献する。
CDとは
継続的デリバリー。
例としてはSpinnakerやArgo CDがある。
オペレーションが簡単で、できるだけ属人化が排除されていることが重要。