У меня есть задача, команда которой в run работает одинаково, за исключением одного значения. Это значение будет из списка потенциальных значений. Я хотел бы создать задачу, которая будет использовать этот список значений для определения задачи, а затем использовать это же значение в команде, определенной в «run». Дело в том, что было бы здорово определить задачу так, чтобы мне не приходилось повторять почти идентичные определения задач для каждого значения.
Например: я хочу задачу, которая получит статус отдельной программы из списка программ, которые я определил в массиве. Я хотел бы определить задачу следующим образом:
set programs = %w["postfix", "nginx", "pgpool"]
programs.each do |program|
desc "#{program} status"
task :#{program} do
run "/etc/init.d/#{program} status"
end
end
Это, очевидно, не работает, но, надеюсь, это показывает, что я пытаюсь здесь.
Мысли