ruby / rake

A make-like build utility for Ruby.
https://ruby.github.io/rake
MIT License
2.34k stars 613 forks source link

Unable to pass parameters to task prerequisite #292

Open novill opened 5 years ago

novill commented 5 years ago

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?

kenzan100 commented 7 months ago

Hi! Has anybody found a way to do this?