1

Rail 3 アプリを「SaaS」化する必要があります。マルチテナント/データ分離などについてはさまざまな意見があることは承知しています。現在、サインアップごとに新しい Heroku アプリを起動する「完全なデータ分離」オプションを使用しています。mydomain.com と www.mydomain.com に起動ページがあります。また、proxy.heroku.com (Heroku Mesh) を指す CNAME エントリ (Zerigo 内) *.mydomain.com もあります。このリンクも確認しました - Ruby on Rails: how to design a SaaS infrastructure? . 私の要件はこれとほぼ同じです。新しいユーザーが SaaS にサインアップするときに、次のことを行う必要があることを理解しています -

  1. アプリ名を選択: app-name.mydomain.com
  2. ユーザー名/パスワード/役割 (オプション) および価格設定オプション
  3. 次に、新しい Heroku インスタンスにコードをデプロイします (また、https://github.com/darkbushido/heroku-rails-saasによって繰り返しの Heroku タスクを簡素化できる場合があります) 。
  4. Heroku ドメインの追加: add .mydomain.com
  5. Heroku config:add を使用して、手順 2 の選択肢を追加します。

すべてがうまく見えます。しかし問題は、プロセスを自動化できるかどうかです。http://rubydoc.info/gems/sで関連する宝石をいくつか見ましたが、それらについてはわかりません。どんな提案も素晴らしいでしょう。

ありがとう

4

1 に答える 1

0

これを自動化できない理由がわかりません。これは、バックグラウンドジョブ(ユーザーがサインアップしたとき)で実行できます。そのジョブでは、herokugemを使用できます。https://github.com/heroku/heroku/blob/master/lib/heroku/client.rbを見て、呼び出すことができるメソッドを確認してください。

アカウントのすべてのHerokuアプリを一覧表示する例を次に示します。

require "heroku"
heroku = Heroku::Client.new("email@example.com", "password")

# List all heroku apps
heroku.list.each do |app|
  puts app[0]
end

これがお役に立てば幸いです。

于 2012-05-15T08:49:52.167 に答える