リリースオーケストレーションは、ソフトウェアのリリースプロセスを効率的に調整してスムーズにデプロイする手法です。
開発・テスト・運用等の異なるチーム間での連携を効率的に行い、作業全体のフローをスムーズに維持します。リリースプロセス全体が一元管理されることで、今何が起こっているかを把握することができ、問題発生時のトラブルシューティングが容易になります。
リリースオーケストレーションでは、リリースプロセスを自動化します。自動化によりリリースサイクルを安定化するとともに、リリース前後で一貫したテストを実施することで、エラー検出を迅速化し、常時品質を確保します。
リリースオーケストレーションは以下のケースで活用されています。
- モバイルアプリのリリース。モバイルアプリの定期的なアップデート
- ソフトウェアの新バージョンリリース
- 複数チームが関与する大規模システムのアップデート
- マイクロサービスアーキテクチャー。マイクロサービス毎にリリースを管理し、依存関係を調整します
- クラウドサービスにおける新機能リリースや定期的なアップデート
- CICDによる、次ステージへの遷移や本番環境へのデプロイ
ツールとしては、JenkinsやGitlab CI等が使われます。