ステージング機能が気になった&良さそうだったので試してみました。
そもそもステージング機能とは
Azure Static Web Appsを使ったWebアプリケーションは、GitHubのリポジトリに変更があるとCI/CDが走って本番環境が更新されるようになっています。 例えばdevelopで開発した機能をmasterへマージして本番環境を更新するときなどがあると思います。 このとき、masterへプルリクが出されたタイミングで自動的にステージング環境が作成されて動作確認することができるという機能です。
developからmasterへプルリクを出してみる
さっそく適当なプロジェクトでプルリクを出してみました。 プルリク作成後の画面を見てみるといきなりビルド&デプロイのワークフローが走り出しました。
少し待つとデプロイが終わって、ステージング環境のURLが表示されました。
URLに飛んでみるとプルリクの内容が反映されていることが確認できました。本番環境にはまだ反映されていません。
たくさんプルリクを出してみる
プルリクを出すたびに作られるステージング環境は上書きされていくのか確認するために何個もプルリクを出してみました。 自動で作られるステージング環境はプルリクごとにURLが違っていて、それぞれ独立したものになっていました。 Azure Portalから確認すると、たくさんステージング環境が作られていることが確認できます。
プルリクをマージしてみる
プルリクをマージしたらステージング環境がどうなるのか試してみます。 マージ後のAzure Portalでのステージング一覧です。masterにマージしたdevelopのステージング環境だけ削除されています。
ちなみにプルリクをマージせずにクローズした場合もステージング環境は削除されました。
まとめ
ステージング機能、めちゃくちゃ便利な機能でした。プルリクをチェックするとき、コードレビューだけでなく実際に画面を見ながら確認できるのはすごい助かります。