rudy / 0.9.1
| Short description: | Not your grandparents' EC2 development and deployment tool. | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Category: | Application/WWW | ||||||||||||||||||||||
| Status: | beta | ||||||||||||||||||||||
| Created: | 2009-03-31 19:31:34 GMT | ||||||||||||||||||||||
| Last update: | 2009-08-05 05:34:37 GMT | ||||||||||||||||||||||
| Owner: | delano (Projects of this owner) | ||||||||||||||||||||||
| Homepage: | http://solutious.com/projects/rudy/ | ||||||||||||||||||||||
| Download: | http://github.com/solutious/rudy/tarball/latest | ||||||||||||||||||||||
| License: | BSD-type | ||||||||||||||||||||||
| Dependency: |
|
||||||||||||||||||||||
| Description: | Rudy - v0.9 BETANot your grandparents’ EC2 deployment tool. 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. All configuration is organized into this hierarchy so you can define properties (machine image, machine type, IP address, etc…) by role, by environment, or by zone. You can also define routines for running shell commands and scripts, uploading files, creating disks and backups, etc… Routines are organized by hierarchy too so a "startup" routine can run one thing for your database machines and another thing for your application machines. Rudy helps with other stuff too. Every machine can be given a hostname based on its zone, environment, role, and position (you can run multiple machines with the same role). These names look like this: m-us-east-1b-stage-app-01, but you can also assign your own names. Rudy also automatically creates a private keypair and security for each machine group (e.g. key-us-east-1b-stage-app and grp-us-east-1b-stage-app). Get-Started with Rudy now. ConfigurationRudy is configured via several Ruby-based domain specific languages. MachinesThe machines configuration describes the "physical" characteristics of your infrastructure.
machines do
env :stage do # Define an environment
ami 'ami-e348af8a' # Specify a machine image
role :app do # Define a role
addresses '11.22.33.44' # Use elastic IPs
disks do # Define EBS volumes
path "/rudy/disk1" do
size 100
device "/dev/sdr"
end
end
end
end
end
RoutinesThe routines configuration describes repeatable processes that you can execute on your machines.
routines do
startup do # $ rudy startup
adduser :rudy
authorize :rudy # Enable passwordless login
disks do
create "/rudy/disk1" # Create, format, and mount a volume
end
remote :rudy do # Run remote commands via SSH
mkdir :p, "great" # $ mkdir -p great
mysql_init :start
your_script 'arg1', 'arg2' # Call your own scripts
end
end
end
See Rudyfile for a complete configuration example. Running CommandsRudy comes with a command-line tool called rudy. It provides commands for describing the infrastructures you’ve built with Rudy.
$ rudy machines
m-us-east-1d-stage-app-01: ec2-67-202-0-112.compute-1.amazonaws.com
m-us-east-1d-stage-app-02: ec2-174-129-117-30.compute-1.amazonaws.com
$ rudy disks
disk-us-east-1d-stage-app-01-rudy-disk1
disk-us-east-1d-stage-app-02-rudy-disk1
$ rudy backups
back-us-east-1d-stage-app-01-rudy-disk1-20090803-1857-49
back-us-east-1d-stage-app-01-rudy-disk1-20090803-1858-36
back-us-east-1d-stage-app-02-rudy-disk1-20090803-1911-05
See rudy -h for more info. Features
Project StatusThis is a BETA release. That means Rudy is not ready for production use! See Project-Status. InstallationVia Rubygems:
$ sudo gem install rudy
or via download: or via git:
$ git clone git://github.com/solutious/rudy.git
NOTE: If you are not installing via RubyGems, you need to make sure the dependencies are in your LOAD_PATH ($:). Ryan Tomayko wrote a gist about it. See Getting-Started for more info. Pre-Requisites
More Info
ContributionsWe encourage people to find unique and interesting ways to break and extend rudy.
Thanks
Credits
Related Projects
LicenseSee: LICENSE.txt |
||||||||||||||||||||||
| Versions: | [0.9.1 (2009-08-05)] [0.8.4 (2009-06-04)] [0.7.3 (2009-05-08)] [0.6.8 (2009-04-30)] [0.4.0 (2009-03-31)] | ||||||||||||||||||||||