Запустите другую задачу в Capify и укажите хост - PullRequest
1 голос
/ 25 декабря 2009

РЕДАКТИРОВАТЬ: перефразируя вопрос

Скажем, у вас есть две задачи. Первый определяет имя хоста динамически и хочет вызвать второй класс только на этом хосте.

task :first_task do
  host_name = ... 
  second_task, :hosts => hostname
end

task :second_task do
  run "some stuff"
end

Насколько я могу сказать, входящие: хосты не работают. Назначение новой роли host_name и использование второй задачи для этих ролей будет работать, но это не сработает в существующих задачах. По-видимому, это возможно при развертывании по умолчанию: настройка работает при передаче переменной HOSTS, но я не могу понять, как это работает.

Ответы [ 2 ]

1 голос
/ 13 апреля 2011

Ну, немного поздно, чтобы это имело значение, но ... Вы можете попробовать:

task :first_task do
  host_name = ... 
  set :hosts, host_name
  second_task
end

task :second_task do
  run "some stuff", :hosts => fetch(:hosts)
end
0 голосов
/ 25 декабря 2009

Передача переменной HOSTS является ENV ['HOSTS'], если вы посмотрите более внимательно.

...