Наследовать роли из родительских задач в обратных вызовах Capistrano - PullRequest
0 голосов
/ 04 августа 2011

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

task t1, :roles => [:r1] do
  ...
end

task t2, :roles => [:r2,:r3] do
  ...
end

before <what?> do
  # must only run on :r1 when triggered by t1,
  # and only on :r2 and :r3 when triggered by t2!
  <ensure role given to parent task has a given file>
end

Как нам это сделать в Капистрано?

1 Ответ

0 голосов
/ 04 августа 2011

Оказывается, что обратный вызов before может вызывать обычную def, и в этом случае он выполняется для ролей родительской задачи. Однако, если вы вызываете задачу там и эта задача не имеет ролей, все роли будут использоваться для ее выполнения. Реальный вопрос в том, где находятся зависимости между задачами ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...