D
Delano Mandelbaum
Rudy 0.9.1 BETA - Not your grandparents' EC2 development and
deployment tool
Rudy is a development and deployment tool for Amazon EC2. It helps you
build and maintain infrastructures in 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.
See Getting Started for information on installing and configuration
Rudy:
http://solutious.com/projects/rudy/getting-started/
CONFIGURATION
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
routines do
startup do # $ rudy startup
adduser :rudy
authorize :rudy # Enable passwordless login
disks do
create "/rudy/disk1" # Create and mount a volume
end
remote :rudy do # Run remote commands via SSH
mkdir , "great" # $ mkdir -p great
mysql_init :start
your_script 'arg1', 'arg2' # Call your own scripts
end
end
end
See the default Rudyfile for a complete configuration example:
http://github.com/solutious/rudy/raw/master/Rudyfile
RUNNING COMMANDS
$ rudy startup
Authorizing group: 70.49.123.222 (22, 22)
Waiting for m-us-east-1d-stage-app-01 to boot...
Waiting for SSH (22) on m-us-east-1d-stage-app-01 ...
Creating volume...
Attaching vol-0023c869 to i-e523298c...
Creating ext3 filesystem for /dev/sdr...
Mounting at /rudy/disk1...
The following machines are now available:
m-us-east-1d-stage-app-01
$ rudy machines
m-us-east-1d-stage-app-01:
ec2-67-202-0-112.compute-1.amazonaws.com
$ rudy disks
disk-us-east-1d-stage-app-01-rudy-disk1
See "rudy -h" for a description of all available commands.
INSTALLATION
Via Rubygems, one of:
$ sudo gem install rudy
via download:
* rudy-latest.tar.gz: http://github.com/solutious/rudy/tarball/latest
* rudy-latest.zip: http://github.com/solutious/rudy/zipball/latest
or via git:
$ git clone git://github.com/solutious/rudy.git
PROJECT STATUS
This is a BETA release. That means Rudy is not ready for production
use!
See: http://wiki.github.com/solutious/rudy/project-status
CONTRIBUTIONS
We encourage people to find unique and interesting ways to break and
extend rudy.
* For bigger features please fork the git repo and send me a pull
request.
* For small or single file changes, send an email with details to:
delano (@solutious.com)
MORE INFO
Codes: http://github.com/solutious/rudy
Rdocs: http://solutious.com/rudy/
Issues: http://github.com/solutious/rudy/issues
Group: http://groups.google.com/group/rudy-deployment
deployment tool
Rudy is a development and deployment tool for Amazon EC2. It helps you
build and maintain infrastructures in 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.
See Getting Started for information on installing and configuration
Rudy:
http://solutious.com/projects/rudy/getting-started/
CONFIGURATION
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
routines do
startup do # $ rudy startup
adduser :rudy
authorize :rudy # Enable passwordless login
disks do
create "/rudy/disk1" # Create and mount a volume
end
remote :rudy do # Run remote commands via SSH
mkdir , "great" # $ mkdir -p great
mysql_init :start
your_script 'arg1', 'arg2' # Call your own scripts
end
end
end
See the default Rudyfile for a complete configuration example:
http://github.com/solutious/rudy/raw/master/Rudyfile
RUNNING COMMANDS
$ rudy startup
Authorizing group: 70.49.123.222 (22, 22)
Waiting for m-us-east-1d-stage-app-01 to boot...
Waiting for SSH (22) on m-us-east-1d-stage-app-01 ...
Creating volume...
Attaching vol-0023c869 to i-e523298c...
Creating ext3 filesystem for /dev/sdr...
Mounting at /rudy/disk1...
The following machines are now available:
m-us-east-1d-stage-app-01
$ rudy machines
m-us-east-1d-stage-app-01:
ec2-67-202-0-112.compute-1.amazonaws.com
$ rudy disks
disk-us-east-1d-stage-app-01-rudy-disk1
See "rudy -h" for a description of all available commands.
INSTALLATION
Via Rubygems, one of:
$ sudo gem install rudy
via download:
* rudy-latest.tar.gz: http://github.com/solutious/rudy/tarball/latest
* rudy-latest.zip: http://github.com/solutious/rudy/zipball/latest
or via git:
$ git clone git://github.com/solutious/rudy.git
PROJECT STATUS
This is a BETA release. That means Rudy is not ready for production
use!
See: http://wiki.github.com/solutious/rudy/project-status
CONTRIBUTIONS
We encourage people to find unique and interesting ways to break and
extend rudy.
* For bigger features please fork the git repo and send me a pull
request.
* For small or single file changes, send an email with details to:
delano (@solutious.com)
MORE INFO
Codes: http://github.com/solutious/rudy
Rdocs: http://solutious.com/rudy/
Issues: http://github.com/solutious/rudy/issues
Group: http://groups.google.com/group/rudy-deployment