No commit activity in last 3 years
No release in over 3 years
capistrano-ec2elb is a Capistrano plugin designed to simplify the task of deploying to infrastructure hosted on Amazon EC2. It was completely inspired by the capistrano-ec2group and capistrano-ec2tag plugins, to which all credit is due.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 2.1.0
 Project Readme

capistrano-ec2elb

A Capistrano plugin aimed at easing the pain of deploying to Amazon EC2 instances by using an ELB name.

Introduction

capistrano-ec2tag is a Capistrano plugin designed to simplify the task of deploying to infrastructure hosted on Amazon EC2. It was completely inspired by the capistrano-ec2group plugin, to which all credit is due.

While the original capistrano-ec2group plugin served me well, I didn't want to rely on security groups for deployment as I used cloudformation more. I also wanted to transition to the aws-sdk gem.

Installation

Set the Amazon AWS Credentials

In order for the plugin to list out hostnames of your EC2 instances, it will need access to the Amazon EC2 API. Specify the following in your Capistrano configuration:

AWS.config(:access_key_id => '...', :secret_access_key => '...')

Get the gem

The plugin is distributed as a Ruby gem.

Ruby Gems

gem install capistrano-ec2elb

Bundler

Using bundler?

gem install bundler

Then add the following to your Gemfile:

source "http://rubygems.org"
gem "capistrano-ec2elb"

Install the gems in your manifest using:

bundle install

Usage

Configure Capistrano

require 'capistrano/ec2elb'

task :production do
  tag "production-loadbalancer-web", :web
  tag "production-loadbalancer-job", :job
  logger.info "Deploying to the PRODUCTION environment!"
end

task :staging do
  tag "staging-loadbalancer-web", :web
  tag "staging-loadbalancer-job", :job
  logger.info "Deploying to the STAGING environment!"
end

License

capistrano-ec2elb is copyright 2011 by [Phillip Goldenburg], released under the MIT License (see LICENSE for details).