より広範なリリースの前に、ユーザーに機能の変更をテストしてもらいたいと考えています。Rails アプリには既に役割がありますが、アプリ全体を移動せずにベータ機能を実装する方法がわかりません。
解決策が思いつかないいくつかの問題:
- ベータ機能では、データベースの移行が必要になる場合があります。既存のアプリで問題が発生する可能性がある場合、これをどのように処理できますか?
- テンプレートと css/sass を変更すると、既存の機能も変更される可能性があります。
- 基になるモデル コードを変更すると、それに依存する既存のコントローラー/インターフェイスが壊れる可能性があります。
1 つの解決策 (悪いオプション) は、新しい機能をコーディングして、ユーザーが「ベータ」ロールを持っている場合にのみそれを表示/使用するロジックでラップすることです。これに関する問題は、最終的にライブにするときに、多くの巻き戻し/変更を行う必要がある可能性があることです. これは時間の無駄であり、バグを引き起こす可能性があります。
もう 1 つの解決策は、アプリの別の「ベータ」ブランチをサブドメインから実行し、ベータ ロールを持つユーザーをそこにルーティングすることです。これに関する問題は、ssl 証明書、電子メール リンク、およびその他のドメインに依存する問題の複雑さにより、これが少しメンテナンスの苦痛になることです (ただし、最初の解決策ほど悪くはありません)。
維持するための追加作業を最小限に抑え、ベータ版を完全版に切り替えるために、これを最も効率的に提供するにはどうすればよいですか?