ruby-on-rails 在Capistrano部署期间,当gem只在生产(而不是登台)上写入crontab时,我如何获得Rails(javan)?

xvw2m8pv  于 2022-11-19  发布在  Ruby
关注(0)|答案(1)|浏览(144)

无论何时,gem对我来说都很好,多年来,在生产中。我的项目现在足够大,需要一个临时环境,Capistrano毫不费力地做到了这一点。但是,我不能解决的一件事是 * 阻止 * 无论何时,gem在 * 临时 * 服务器上写入cron条目。
我已经断断续续地找了好几个星期的答案,在做其他事情的同时,我已经尝试了大约6种不同的破解方法。我已经在GitHub上创建了一个issue,关于文档中建议的一件事:“namespacing”schedule.rb文件。我对该语句的解释没有任何作用。而且SO上的所有引用似乎都是关于gem不写crontab条目的。我的问题是它写得太多了!
我想,与其在这个特定的问题上钻牛角尖,不如直接问这个问题。当然,人们正在这样做。这似乎是一个显而易见的基本要求,例如,将作业与各种环境联系起来。但是,就像我说的,我所尝试的一切都失败了,我仍然在staging中得到了只适合生产的crontab条目。
实施特定于环境的作业的最干净的方式是什么?

bqujaahr

bqujaahr1#

我们传递一个环境变量来划分哪些作业在哪个服务器环境中运行。

env = @environment

if env == 'production'
  # a bunch of scheduled tasks
end

相关问题