デプロイ自動化とは?

デプロイ自動化では、コマンド 1 つで、テスト環境、ステージング環境、およびライブ環境を更新できます。

新しいビルドを本番前の環境と本番環境の両方にデプロイする際に伴うタスクを自動化することで、高速で繰り返し確実に適用可能なプロセスを作成することができます。

デプロイ自動化は、CI/CD パイプラインの後半部分です。 ビルドアーティファクトを継続的インテグレーションステージの一環として公開すれば、次のステップでは、それらのアーティファクトを本番前の環境にデプロイし、自動インテグレーションテスト、エンドツーエンドテスト、パフォーマンステスト、およびセキュリティテストが実施されます。 その後、手動による探索テストとステージングからのフィードバックの収集が行われます。

最終ステージでは、完全に自動化されたプロセス(継続的デプロイ)か手動でトリガーされるスクリプトプロセス(継続的デリバリー)によって、変更が本番にリリースされます。

毎回アーティファクトリポジトリからビルドアーティファクトをプルすることで、同じビルドアーティファクトを各環境に再利用し、デプロイプロセスを異なる環境間でできる限り同じ状態にしておくことが推奨されます。

こうすれば、本番に到達するまで各ビルドのプロセスを何度もテストし、リリースに対してより高い自信を得ることができます。 組織が CI/CD と DevOps を導入しようとしている段階であれば、複数のチームが協力して目標を共通にする必要があるため、デプロイプロセスを統一する上での合意を図るのは挑戦となることがあります。

デプロイプロセスの自動化は、更新を頻繁にリリースできるようにするには不可欠です。 デプロイ自動化が存在しなければ、完全な自動テスト体制を通じてビルドを公開しようとするたびに、テスト環境を更新して、手動で新しいビルドをデプロイしなければなりません。 これでは、フィードバックループに遅延が発生し、変更をユーザーに届けるまでの時間が長くなってしまいます。