如何使 rake 任务在 dev 以外的环境中运行?
Posted
技术标签:
【中文标题】如何使 rake 任务在 dev 以外的环境中运行?【英文标题】:How can I make rake tasks run in an environment other than dev? 【发布时间】:2011-07-26 10:26:09 【问题描述】:我有一台带有特殊“登台”环境的登台机器。我总是忘记在那台机器上运行 rake 任务,例如:
rake jobs:work RAILS_ENV=staging
所以我最终会这样做:
rake jobs:work
然后我很困惑为什么我的数据库中没有任何变化。嗬!这是因为我不记得提供 RAILS_ENV=staging。
但我永远不需要在该服务器上运行任何东西作为开发环境。如何让 rake 任务默认在“staging”环境中运行?
【问题讨论】:
【参考方案1】:Rails.env = 'staging'
把它放在你的任务文件中。
【讨论】:
【参考方案2】:您可以将设置环境变量RAILS_ENV
的行放在一个文件中,该文件将在您登录机器时运行。例如,我是 bash 用户,所以我会放行
export RAILS_ENV=staging
在 ~/.bashrc(仅适用于我)或 /etc/bashrc(适用于所有登录机器的人)中。
希望这会有所帮助!
【讨论】:
以上是关于如何使 rake 任务在 dev 以外的环境中运行?的主要内容,如果未能解决你的问题,请参考以下文章
在 Elastic Beanstalk 环境中运行 Rails rake 任务