Rudy 0.9 Released
After 8 months of development, testing, writing, and rewriting, Rudy has reached version 0.9. This is an important release because it establishes a baseline for the upcoming 1.0. The configuration syntax, command-line interface, and Ruby APIs are now stable and will not change. The road to 1.0 will be paved with testing, bug fixes, and documentation.
Note: Rudy 0.9 is not compatible with previous releases. See Upgrading.
What is Rudy?
Rudy is a development and deployment tool for EC2. It helps you build and maintain infrastructures by organizing them into groups of zones, environments, and roles. By making it quick and easy to build infrastructures, Rudy makes it feasible to run environments only for the time that you need them. Get started now.
Who is it useful for?
Rudy is useful to anyone starting a project with Amazon EC2. It’s also useful for launching test environments on-the-fly. My beta customers have been using Rudy to build and maintain their stage and production environments. I even use Rudy to script my release process (I’ll publish my configuration in a future post).
There are many possibilities. You can find other examples in Rudy’s Arcade and in my EBS test.
Configuration
Rudy is configured via several simple domain specific languages. There’s a machines configuration which describes the “physical” properties of your infrastructure and a routines configuration for describing repeatable processes (similar to short scripts).
The following is an example configuration that creates a machine called m-us-east-1b-stage-app-01
. This machine has a 100GB EBS volume mounted at /rudy/disk1
and one user named rudy
.
See the default Rudyfile for a complete configuration sample
Installation
$ sudo gem install rudy
See Getting Started for details.
More Information
- Fork at GitHub
- Read the Documentation
- Submit issues to the Issue Tracker
- Start a discussion on the Discussion Group
- Find some Inspiration
Thanks
In addition to everyone that has used and is using Rudy, I’d like to thank (in no specific order):
- Kalin Harvey for the encouragement and answering my random questions.
- The Rilli team for the initial usecase and invaluable feedback: Adam Bognar, Andrew Simpson, Caleb Buxton, Colin Brumelle.
- Sam Aaron for teaching me about Ruby and communicative programming.
- Everyone at Utrecht.rb for the interest and encouragement.
- Steve Abatangle for the bug fixes.
- Mathias Monnerville for allowing me to register Rudy at Google Code.
- Jamis Buck for Net::SSH
- Glenn Rempe for amazon-ec2 (and the quick releases!)
- And of course, Keshia Knight Pulliam.
What’s Next
There’s a lot of exciting stuff in store for Rudy and Solutious. Look forward to more announcements in the coming months.