class Rookie::Tasks
Provides many useful tasks, like the Gem
, Git
and Console
tasks.
Don't forget to call define_tasks!
after creating an instance of this class!
Attributes
console[RW]
The Console
task.
gem[RW]
The Gem
task.
git[RW]
The Git
task.
Public Class Methods
new(gemspec, opts = {}) { |self| ... }
click to toggle source
Initializes the tasks with the given gem specification and options.
Yields the new instance if given a block.
# File lib/rookie/tasks.rb, line 26 def initialize(gemspec, opts = {}) self.gem = Tasks::Gem.new gemspec self.git = Tasks::Git.new gem.spec.version.to_s self.console = Tasks::Console.new gem.spec, opts yield self if block_given? end
Public Instance Methods
define_tasks!()
click to toggle source
Defines the tasks for all initialized (not nil
) tasks.
# File lib/rookie/tasks.rb, line 34 def define_tasks! setup_tasks, clean_tasks, release_tasks = [], [], [] if git git.define_tasks! release_tasks << 'git:release' end if gem gem.define_tasks! setup_tasks << 'gem:setup' clean_tasks << 'gem:clean' release_tasks << 'gem:release' end console.define_tasks! if console desc 'Setup project' task :setup => setup_tasks desc 'Remove temporary files' task :clean => clean_tasks desc 'Release project' task :release => release_tasks + clean_tasks task :default => :setup end