Keep RSpec Current
I like living on the edge with RSpec. It actually is not so bad. Every week or so I do an update on the trunk, but this is a few steps that should be automated, this is how you do it.
The steps involved are:
- Get the latest copy of the RSpec trunk
- Build the gem
- Install the gem
- Install the latest Textmate bundle
This is something perfectly suited to a shell script.
Thanks go to Ashley Moran for giving me the idea to write this blog entry on the RSpec mailing list.
So, this is how I set it up and then do it.
<ol>
<li>
Make a directory where you are going to keep your source tree for RSpec, I keep mine in “Ruby Programs”
</li>
baci:~ mikel$ mkdir ruby_programs
<li>
Then check out the RSpec trunk into this directory
</li>
baci:~ mikel$ cd ruby_programs
baci: mikel$ svn co http://rspec.rubyforge.org/svn/trunk/RSpec
<li>
Next step is to remove any other version of the RSpec.tmbundle you might have on your computer, you should check the following areas:
</li>
~/Library/Application\ Support/TextMate/Bundles/
~/Library/Application\ Support/TextMate/Pristine\ Copy/Bundles/
/Library/Application\ Support/TextMate/Bundles/
/Library/Application\ Support/TextMate/Pristine\ Copy/Bundles/
<li>
Now we have a directory tree, lets make a shell script to handle the work
</li>
In your favorite editor, type the following:
#!/usr/bin/env sh
cd ~/ruby_programs/rspec/rspec/
rake clobber
rake package
sudo gem install pkg/*.gem
As a note, prefixing a path with “~” is shorthand to insert the path to your home directory, which in my case is /Users/mikel/
<li>
You can save the above code in your home directory, call it RSpec_update.sh, you also need to make it executable by doing the following:
</li>
chmod 775 ~/RSpec_update.sh
<li>
Now run the command, watch the text fly by, enter your password where needed and you would have updated your RSpec bundle, gem and docs all in one swoop!
</li>
</ol>
Enjoy!
blogLater
Mikel