Clean up that Rakefile, you piece of illiterate scum! *whip crack*
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



task_master is a suite to help you clean up your Rakefile. It allows you to quickly and easily create task groups that preform specific tasks and require specific common RubyGems and project metadata, and allows you to keep your Rakefile quite DRY. It supports many meta-project tools, and allows you to easily write your own task groups for any tools that it doesn't support.


require 'task_master' MyProject do |project| = 'My Project'
  project.unix = 'my_project'
  project[:echoe].project = 'my-project' # Rubyforge project name
  project.libs = ['lib', 'othershit']
  project.file[:rakefile] = 'Rakefile.rb'
  project.file[:manifest] = '.manifest'
  project.file[:readme] = 'README.markdown'
  project[:yard].markup = 'markdown' # YARD readme markup
  project[:rcov].threshold = 95.0

tasking :package, 'Echoe'
tasking :documentation, 'YARD'
tasking :specs, 'RSpec'


You can install task_master as a pre-built gem, or as a gem generated directly from the source.

The easiest way to install task_master is to use RubyGems to acquire the latest 'release' version from RubyForge, using the gem command line tool:

sudo gem install task_master # You'll be asked for your account password.

Alternatively, you can acquire it (possibly slightly more up-to-date, depending on how often I update the gemspec) from GitHub as follows:

# If you've ever done this before, you don't need to do it now - see
gem sources -a
sudo gem install elliottcable-task_master # You'll be asked for your account password.

Finally, you can build a gem from the latest source yourself. You need git, as well as rake and elliottcable's clone of echoe:

git clone git://
cd task_master
# If you've ever done this before, you don't need to do it now - see
gem sources -a
sudo gem install elliottcable-echoe # You'll be asked for your account password.
rake install # You'll be asked for your account password.


You can contribute bug fixes or new features to task_master by forking the project on GitHub (you'll need to register for an account first), and sending me a pull request once you've committed your changes.


  • GitHub is the project's primary repository host, and currently also the project's home page
  • RubyForge is out primary RubyGem host, as well as an alternative repository host
  • integrity is our continuous integration server - if the top build on that page is green, you can assume the latest git HEAD is safe to run/install/utilize.
  • Gitorious is an alternative repository host
  • is an alternative repository host


task_master is copyright 2008 by elliott cable.

task_master is released under the GNU General Public License v3.0, which allows you to freely utilize, modify, and distribute all task_master's source code (subject to the terms of the aforementioned license).