inag
@inag

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Vercelを使ったテスト環境の構築

解決したいこと

Vercel,Firebase,github,を使って
ユーザーと企業をつなぐマッチングプラットフォームを開発しています。

いま開発済みのシステムをコピーし、テスト環境用に一つドメインを追加して検証できるものを作成したいと考えております。
Vercel上のシステムを一つコピーし、そこにtest.ドメインを割り当てをしたいのですがVercelの知見がなく、止まっております。Firebase(DB)については1つのみで本番環境、テスト環境の双方から参照するようにしたいと考えています。

▼実施しようとしている内容
Vercelにて
1.システムのコピー(今後は開発環境に反映、動作確認後問題なければ本番環境に反映という流れ
2.テスト環境用のドメインの割り当て
3.envファイルの修正
4.basic認証の設定
を実施すればテスト環境構築できるかなと思っておりましたが、Vercelでのやり方、注意点などありましたら教えてほしいです。

発生している問題・エラー

Vercel,Firebase,github,を使って
ユーザーと企業をつなぐマッチングプラットフォームを開発しています。

いま開発済みのシステムをコピーし、テスト環境用に一つドメインを追加して検証できるものを作成したいと考えております。
Vercel上のシステムを一つコピーし、そこにtest.ドメインを割り当てをしたいのですがVercelの知見がなく、止まっております。Firebase(DB)については1つのみで本番環境、テスト環境の双方から参照するようにしたいと考えています。
または、問題・エラーが起きている画像をここにドラッグアンドドロップ

該当するソースコード

自分で試したこと

既存システムの棄損を懸念しいまのところ特に試しておりません。

0

3Answer

本番に出す直前に本番とほぼ同じ構成でテストする環境を一般的にステージング環境と呼びます。 Vercel でステージング環境をセットアップするガイドは以下にあります。

簡単に要約すると、

  • ステージング環境用のドメインを追加する
  • そのドメインにデプロイするブランチを指定する
  • そのブランチに紐付く環境に固有の環境変数を設定する

という流れです。

開発済みのシステムをステージング環境に反映するには、ステージング用のブランチにコードをプッシュします。

ステージング環境で本番環境と同じ DB を使うには、環境変数で同じ DB のホストなどを指定してください。

また、ステージング環境にだけ Basic 認証を設定するなど、本番環境と差異がある部分は、すべて環境変数の指定だけで切り替えられるようにアプリケーション側で対応してください。1たとえば環境変数 BASIC_AUTH=myuser:mypassword が設定されているときだけ認証ミドルウェアを有効にし、そのユーザー名とパスワードでログインできるようにするなどです。

  1. これは SaaS に適したアプリケーションを作る方法論である The Twelve-Factor App設定についての指針に従っています。 Vercel のみならず他のプラットフォームでも有効な考え方です。

0Like

@uasi
こちらご回答いただき誠にありがとうございます。
教示いただいた内容を参考にトライしてみます。
不明点がある場合コメントさせて頂ければ幸いでございます。
引き続きよろしくお願いいたします。

0Like

本番のデータを誤って操作してしまう懸念があるので、「Firebase(DB)」はテスト用も構築したほうがいいのではないでしょうか。

0Like

Your answer might help someone💌