ruby-on-rails – 仅针对某些角色运行Capistrano任务

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 仅针对某些角色运行Capistrano任务前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的项目有一个包含爬行,NLP等步骤的多步骤管道,但我只是将它们称为Step1,Step2等.此外,我希望能够部署到不同的环境(dev,prod,等等).

我想我将使用Capistrano的多级组件来部署到不同的环境(例如,cap dev deploy vs cap prod deploy).

对每个管道步骤使用角色似乎也很直观.但是,每个步骤都相当独立于管道的其余部分运行,因此每个步骤都可以独立于其他步骤重新启动/部署.看起来Capistrano似乎并不明确支持仅针对特定角色运行任务.这样做的好方法是什么?

是否为每个角色专门执行此定义任务的最佳方式是什么?如果角色之间有一些共同的任务怎么办?也许辅助方法就是那里的答案?

解决方法

不确定这正是你想要的,但是当我想对特定角色做某事时,我使用了capistrano shell.例如,假设我想部署但仅限于我的应用服务器,我可能会执行以下操作:
cap production shell
cap>with app
cap>!deploy #or any other cap task you have

如果需要,您也可以按机器范围.再次:

cap production shell
cap>on <machine name or ip>
cap>!deploy #or any other cap task you have

希望能帮助到你,

斯科特

猜你在找的Ruby相关文章