我有一个带有两个实例 app1 和 app2 的生产服务器,我使用 capistrano 来部署我的应用程序,即:cap app1 deploy,cap app2 deploy。
我现在正在配置发条来安排我延迟的工作。但是会发生什么,作业被安排了两次,因为在部署应用程序后,时钟进程同时在 app1 和 app2 上运行。
如何强制 capistrano 仅在 app2 上运行发条进程?
感谢您的提示。米罗斯拉夫
解决方案
将以下设置添加到 deploy.rb 中:
set :clockwork_role, :clock
然后只配置其中一个实例使用角色:clock,即:
server 'URL', user: 'deploy', roles: %w{app db web clock}