【发布时间】:2017-09-25 20:23:07
【问题描述】:
我继承了一个 Rails 应用程序。我的 production.rb 文件有以下内容:
ActionMailer::Base.smtp_settings = {
port: 587,
address: "smtp.sendgrid.net",
user_name: ENV['NF_SENDGRID_USERNAME'],
password: ENV['NF_SENDGRID_PASSWORD'],
domain: ENV['NF_SENDGRID_DOMAIN'],
authentication: :plain,
这个应用程序没有使用 figaro gem,我已经登录到服务器 (Ubuntu) 并为部署者和 root 用户发出了 printevn 并且看不到这些变量。如何从生产环境中发现这些?
【问题讨论】:
-
它们可能会在启动时传入(与启动命令一起)。应用如何启动?
-
在不同的情况下,您可以简单地编辑您显示摘录的文件并添加例如
Rails.logger.warn ENV['NF_SENDGRID_USERNAME'] -
????不确定何时询问应用程序是如何启动的?应用程序正在使用 Capistrano。这能回答你的问题吗?
-
你在哪里添加了那些
ENV变量? Rails 不会创建它们,但如果已定义,则读取它们。