4 *task_master* is a suite to help you clean up your [Rakefile][]. It allows you to
5 quickly and easily create task groups that preform specific tasks and require
6 specific common [RubyGems][] and project metadata, and allows you to keep your
7 Rakefile quite DRY. It supports many meta-project tools, and allows you to
8 easily write your own task groups for any tools that it doesn't support.
10 [Rakefile]: <http://rake.rubyforge.org/files/doc/rakefile_rdoc.html> "Rakefile Format RDoc"
11 [RubyGems]: <http://rubygems.org/read/chapter/1#page22> "What is a RubyGem?"
17 TaskMaster.new MyProject do |project|
18 project.name = 'My Project'
19 project.unix = 'my_project'
20 project[:echoe].project = 'my-project' # Rubyforge project name
21 project.libs = ['lib', 'othershit']
22 project.file[:rakefile] = 'Rakefile.rb'
23 project.file[:manifest] = '.manifest'
24 project.file[:readme] = 'README.markdown'
25 project[:yard].markup = 'markdown' # YARD readme markup
26 project[:rcov].threshold = 95.0
29 tasking :package, 'Echoe'
30 tasking :documentation, 'YARD'
31 tasking :specs, 'RSpec'
35 You can install task_master as a pre-built gem, or as a gem generated directly
38 The easiest way to install task_master is to use [RubyGems][] to acquire the
39 latest 'release' version from [RubyForge][], using the `gem` command line tool:
41 sudo gem install task_master # You'll be asked for your account password.
43 Alternatively, you can acquire it (possibly slightly more up-to-date,
44 depending on how often I update the gemspec) from GitHub as follows:
46 # If you've ever done this before, you don't need to do it now - see http://gems.github.com
47 gem sources -a http://gems.github.com
48 sudo gem install elliottcable-task_master # You'll be asked for your account password.
50 Finally, you can build a gem from the latest source yourself. You need [git][],
51 as well as [rake][] and elliottcable's clone of [echoe][]:
53 git clone git://github.com/elliottcable/task_master.git
55 # If you've ever done this before, you don't need to do it now - see http://gems.github.com
56 gem sources -a http://gems.github.com
57 sudo gem install elliottcable-echoe # You'll be asked for your account password.
58 rake install # You'll be asked for your account password.
60 [RubyGems]: <http://rubyforge.org/projects/rubygems/> "RubyGems - Ruby package manager"
61 [RubyForge]: <http://rubyforge.org/projects/task-master/> "task_master on RubyForge"
62 [git]: <http://git-scm.com/> "git - Fast Version Control System"
63 [Rake]: <http://rake.rubyforge.org/> "RAKE - Ruby Make"
64 [echoe]: <http://github.com/fauna/echoe> "If you don't want to hoe, echoe"
68 You can contribute bug fixes or new features to task_master by forking the project
69 on GitHub (you'll need to register for an account first), and sending me a
70 pull request once you've committed your changes.
74 - [GitHub](http://github.com/elliottcable/task_master "task_master on GitHub") is the
75 project's primary repository host, and currently also the project's home
77 - [RubyForge](http://rubyforge.org/projects/task-master "task_master on RubyForge") is
78 out primary RubyGem host, as well as an alternative repository host
79 - [integrity](http://integrit.yreality.net/task_master "task_master on yreality's integrity server")
80 is our continuous integration server - if the top build on that page is
81 green, you can assume the latest git HEAD is safe to run/install/utilize.
82 - [Gitorious](http://gitorious.org/projects/task_master "task_master on Gitorious") is
83 an alternative repository host
84 - [repo.or.cz](http://repo.or.cz/w/task_master.git "task_master on repo.or.cz") is
85 an alternative repository host
89 task_master is copyright 2008 by elliott cable.
91 task_master is released under the [GNU General Public License v3.0][gpl], which
92 allows you to freely utilize, modify, and distribute all task_master's source code
93 (subject to the terms of the aforementioned license).
95 [gpl]: <http://www.gnu.org/licenses/gpl.txt> "The GNU General Public License v3.0"