2016-03-07 106 views
1

我有一個Rails 4.2.5應用程序,我剛部署到Heroku。我想知道的是如何設置我的Rails應用程序運行的環境。我想將環境設置爲測試,但現在它已被設置爲開發。每Heroku的文檔,我在我的項目的根目錄中創建一個名爲「Procfile」的文件,並添加這一行吧如何在運行我的Rails應用程序時在Heroku中設置環境?

web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-test} 

,但我的應用程序還是會被部署在開發模式。我知道這是因爲我通過一個文件「./config/environment_variables.yml」,它看起來像

development: 
    GOOGLE_CLIENT_ID: 425025269574-o5ejue1pgtsjoid0f0k8r7lcksfse6hk.apps.googleusercontent.com 
    GOOGLE_SECRET: 16ckoTU_RbRKkdxv7_wkZnw8 
    FACEBOOK_KEY: "6574234667329742" 
    FACEBOOK_SECRET: 690e7faeb05199e5392892d397b79f8e 
test: 
    GOOGLE_CLIENT_ID: 425025269574-gkcj8t19palgj34e5an4gj3mk68grpeg.apps.googleusercontent.com 
    GOOGLE_SECRET: mokumLI9XdD8f10M6oamj7Jx 
    FACEBOOK_KEY: "8877114738693318" 
    FACEBOOK_SECRET: 779102b0e08e4374ca7c6986924bcf9b7 
production: 
    GOOGLE_CLIENT_ID: 425025269574-gkcj8t19palgj34e5an4gj3mk68grpeg.apps.googleusercontent.com 
    GOOGLE_SECRET: mokumLI9XdD8f10M6oamj7Jx 
    FACEBOOK_KEY: "8877114738693318" 
    FACEBOOK_SECRET: 779102b0e08e4374ca7c6986924bcf9b7 

,但只有發展瓦爾越來越設置設置一些環境變量。

+3

你會想旋轉你剛剛張貼到互聯網的應用程序的祕密。 –

+1

使用'em!繼續,降低應用程序,我敢! – Dave

回答

0

更新您的個人資料如下:

web: bundle exec puma -C config/puma.rb

,並設置RAILS_ENVtest如下:

heroku config:set RAILS_ENV=test

如果你沒有修改過config/puma.rb那麼它應該有如下:

environment ENV.fetch("RAILS_ENV") { "development" }

它依賴於RAILS_ENV而不是RACK_ENV

0

您procfile:

web: bundle exec puma -C config/puma.rb 

然後引用您的RACK_ENV變種在puma.rb文件

RACK_ENV應該在你的Heroku的配置設置爲生產。我相信這是默認的,但你也可以設置它。通過運行heroku配置進行檢查。

如果沒有設置運行:

heroku config:set RACK_ENV=production 

編輯:你實際上並沒有試圖改變環境。或者你不應該。根據您的意見,你需要這樣做Heroku的服務器上:

heroku config:set GOOGLE_CLIENT_ID=425025269574-gkcj8t19palgj34e5an4gj3mk68grpeg.apps.googleusercontent.com GOOGLE_SECRET=mokumLI9XdD8f10M6oamj7Jx FACEBOOK_KEY="8877114738693318" FACEBOOK_SECRET=779102b0e08e4374ca7c6986924bcf9b7 

這些都是您不小心打成測試證書,因爲你在想您爲「測試」的服務器作爲「測試環境。」這不是Rails引用測試環境時的含義。這意味着在本地運行測試的環境。只需將這些變量放在heroku上並讓它成爲生產。

+0

你的puma.rb文件的內容是什麼? – Dave

+0

@戴夫https://gist.github.com/toddmetheny/659ea82ba47545e46a09 – toddmetheny

+0

您好,我添加了puma.rb文件爲您在您的文章中指定就跑「的Heroku配置:設置RACK_ENV =測試」,但很可惜我還是使用生產設置來獲取heroku,而不是我想要的測試設置。 – Dave

相關問題