rake icon indicating copy to clipboard operation
rake copied to clipboard

Unable to pass parameters to task prerequisite

Open novill opened this issue 7 years ago • 1 comments

I need before and after hooks for all rake tasks.

task :my_before_hook, [:name] => :environment do |_t, args|
  puts "Rake task #{args[:name]} started"
end

task :my_after_hook, [:name] => :environment do |_t, args|
  puts "Rake task #{args[:name]} finished"
end

task :my_test_task  => :environment do
  puts '--------- This is test task'
end

Rake.application.tasks.each do |tsk|
  next if [Rake::Task['my_before_hook'],
           Rake::Task['my_after_hook']].include?(tsk)

  tsk.enhance ['my_before_hook'] # I can't send any params with such code

  tsk.enhance do
    Rake::Task['my_after_hook'].invoke(tsk.name)
  end
end

Is there any way to send params to prerequisite?

novill avatar Nov 21 '18 15:11 novill

Hi! Has anybody found a way to do this?

kenzan100 avatar Mar 07 '24 07:03 kenzan100