Skip to content

defunkt/sake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

= Sake. Best served warm.

Sick of copy & pasting your badass custom Rakefiles into every new Rails app 
you start?  Fed up with writing one-off admistrative scripts and leaving them
everything?

No longer.  Sake is a tool which helps you maintain a set of system level Rake tasks.  

Get started:

$ sudo gem install sake
$ sake -h

Show all Sake tasks (but no local Rake tasks), optionally only those matching a pattern.
  $ sake -T
  $ sake -T db

Show tasks in a Rakefile, optionally only those matching a pattern.
  $ sake -T file.rake
  $ sake -T file.rake db

Install tasks from a Rakefile, optionally specifying specific tasks.
  $ sake -i Rakefile
  $ sake -i Rakefile db:remigrate
  $ sake -i Rakefile db:remigrate routes

Examine the source of a Rake task.
  $ sake -e routes

You can also examine the source of a task not yet installed. 
  $ sake -e Rakefile db:remigrate

Uninstall an installed task.  (Can be passed one or more tasks.)
  $ sake -u db:remigrate

Post a task to Pastie!
  $ sake -p routes

Invoke a Sake task.
  $ sake <taskname>

Some Sake tasks may depend on tasks which exist only locally.

For instance, you may have a db:version sake task which depends
on the 'environment' Rake task.  The 'environment' Rake task is one
defined by Rails to load its environment.  This db:version task will
work when your current directory is within a Rails app because
Sake knows how to find Rake tasks.  This task will not work,
however, in any other directory (unless a task named 'environment' 
indeed exists).

Sake can also serve its tasks over a network by launching a Mongrel handler.
Pass the -S switch to start Sake in server mode.

  $ sake -S

You can, of course, specify a port.
  $ sake -S -p 1111

You can also daemonize your server for long term serving fun.
  $ sake -S -d

== Special Thanks

  * Ryan Davis
  * Eric Hodel
  * Josh Susser
  * Brian Donovan
  * Zack Chandler
  * Dr Nic Williams

== Author

>> Chris Wanstrath
=> chris@ozmm.org