- 论坛徽章:
- 30
|
看下官方的capfile - # an esay way to connect to all instances
- # cap shell
- set :user, ENV['USER']
- ssh_options[:keys] = "~/.ssh/id_rsa"
- set :use_sudo, false
- raise "USAGE: source ./config/FOLDER/settings.sh && cap fooo" unless ENV['SG_NAME']
- instances = `as-describe-auto-scaling-groups $SG_NAME --region $REGION|grep ^INSTANCE`.split("\n")
- ids = instances.map{|i| i.split(" ")[1]}
- instance_info = `ec2-describe-instances #{ids.join(" ")} --region $REGION|grep ^INSTANCE`
- addresses = instance_info.map{|i| i.split(" ")[3]}
- #puts "addresses: #{addresses.inspect}"
- addresses.each do |address|
- role :app, "#{address}:22"
- end
- # example to get current queue from haproxy
- task :current_queue do
- run "curl 'http://username:password@localhost/haproxy?stats;csv' 2> /dev/null | grep self | awk '{split($0,a,\",\"); print a[3]}'"
- end
复制代码 |
|