Запуск задач Capistrano только для определенных ролей

В моем проекте есть многоэтапный конвейер, который включает некоторые шаги, такие как сканирование, NLP и т. д. но я просто буду называть их Step1, Step2 и т. д. Кроме того, я хочу иметь возможность развертывания в различных средах (dev, prod и т. д.).

Я полагаю, что буду использовать многоступенчатый компонент для Capistrano, чтобы развертывание в различных средах (например, cap dev deploy vs cap prod deploy).

Также кажется интуитивно понятным использование ролей для каждого шага конвейера. Однако каждый шаг выполняется независимо от остальной части конвейера, поэтому каждый шаг можно перезапустить / развернуть независимо от других шагов. Не похоже, что Capistrano явно поддерживает выполнение задач только для определенной роли. Как это лучше всего сделать?

Лучше всего определять задачи для каждой роли? Что, если у ролей есть общие задачи? Может быть, там ответ помогут вспомогательные методы?

8
задан JZC 29 June 2011 в 23:10
поделиться