プレビュー環境に必要な要件を整理する

概要

プレビュー環境、マルチステージング環境などと呼ばれる環境について要件を整理する。

要件

  • プルリクエスト(任意のブランチ)のコードをデプロイできる
    • 他の開発者と分離された環境をデプロイできる
  • プルリクエストにラベルを貼るとインフラが作成される
    • プレビュー環境が必要ないプルリクエストを考慮する(Renovateなど)
  • 短い時間で起動できる
    • 3分以上待つのは厳しい
    • 起動するリソースの種類を考慮する
    • ロードバランサーやストレージは起動に時間がかかるので起動しなくて済む設計にする
  • 環境変数を変更できる
  • プルリクエストごとにURLが発行される
    • リクエストはパスベースでルーティングする
  • デプロイされたら通知が来る
    • リポジトリ
    • アプリケーション名
    • コミットハッシュ
    • URL
  • プルリクエストがクローズされたらインフラリソースが削除される

まとめ

プレビュー環境に必要な要件を整理した。
他にも検証用に開発メンバー個人専用の環境を用意する方法もある。