AWS OpsWorks - 无法加载rails控制台。没有加载ENV变量?

时间:2016-01-11 16:06:28

标签: ruby-on-rails aws-opsworks

当我进入服务器并运行sudo RAILS_ENV=integration bundle exec rails c时,我收到一条错误,指出Devise.secret_key was not set. Please add the following to your Devise initializersecret_key_base在OpsWorks界面中设置为环境变量。此外,如果我只是运行sudo bundle exec rails c(加载开发环境),它加载正常,因为secrets.yml在文件中有硬编码值。

所以我想我的问题是,如何验证我的环境变量是否正在应用于应用程序?当我部署应用程序并输出Rails.application.secrets.secret_key_base时,我获得了开发secret_key_base,而不是环境中加载的那个。或者,如果secrets.yml中的开发块中不存在env变量,则env变量将返回nil下面的secrets.yml片段。

感谢您的帮助/见解!

  integration:                                                                                                                                                                                                                                                                      
    secret_key_base: <%= ENV['SECRET_KEY_BASE'] %>

0 个答案:

没有答案