Як я можу запустити всі завдання рейки?
task :a do
# stuff
end
task :b do
# stuff
end
task :c do
# stuff
end
task :all do
# Run all other tasks?
end
Я знаю, що можу просто зробити
task :all => [:a, :b, :c] do
end
але якщо я додам нове завдання, мені також потрібно додати його :all
залежності. я б хочеться уникати необхідності робити це вручну, оскільки здається, що просто забути.
Відповіді:
1 для відповіді № 1Ось один спосіб:
namespace :hot_tasks do |hot_tasks_namespace|
task :task1 do
puts 1
end
task :task2 do
puts 2
end
task :all do
hot_tasks_namespace.tasks.each do |task|
Rake::Task[task].invoke
end
end
end
біжи це:
# bundle exec rake hot_tasks:all
1
2
Більше (не обов'язково краще) ідеї в це питання, особливо якщо ви перебуваєте на прикладі рейок.