Module: Seedbank::TaskManager

Defined in:
lib/seedbank/task_manager.rb

Instance Method Summary collapse

Instance Method Details

#override_task(*args, &block) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/seedbank/task_manager.rb', line 4

def override_task(*args, &block)
  name, params, deps = resolve_args(args.dup)
  fq_name = current_scope.push(name).join(':')
  new_name = "#{fq_name}:original"
  unless Rake::Task.task_defined?(new_name)
    rename_task(fq_name, new_name)
    define_task(Rake::Task, *args, &block)
  end
end

#rename_task(fq_name, new_name) ⇒ Object



14
15
16
17
18
# File 'lib/seedbank/task_manager.rb', line 14

def rename_task(fq_name, new_name)
  task = @tasks.delete(fq_name)
  task.rename(new_name)
  @tasks[new_name] = task
end