module SleepingKingStudios::Tasks::TaskGroup::ClassMethods

Public Instance Methods

exit_on_failure?() click to toggle source

@return [Boolean] True.

# File lib/sleeping_king_studios/tasks/task_group.rb, line 29
def exit_on_failure?
  # :nocov:
  true
  # :nocov:
end
task(definition, options = {}) click to toggle source

Adds a task definition to the task group. The task name, description, and method options (if any) are resolved from the task class, and a wrapper method is defined for calling the task.

# File lib/sleeping_king_studios/tasks/task_group.rb, line 14
def task definition, options = {}
  task_name = options.fetch(:as, definition.task_name)

  desc(task_name, definition.description)

  definition.options.each do |option_name, option_params|
    method_option option_name, option_params
  end # each

  define_method(task_name) do |*args|
    definition.new(self.options).call(*args)
  end # define_method
end