rightstuff - Another Ruby Interface for RightScale
Here is a typical example:
require 'rubygems' if RUBY_VERSION < '1.9'
require 'rightstuff'
include Rightstuff::Credentials
rs = Rightstuff::Client.new( rightscale_data[ :main ][ :credentials ] )
servers = rs.servers
servers.each{ |server| puts server.private_ip_address }
server_arrays = rs.server_arrays
servers.each{ |array| puts("Array #{array.nickname} is running #{array.active_instances_count || 0} instances.") }
active_array = server_arrays.detect{|array| array.active_instances_count.to_i > 0}
array_instances = active_array.instances
puts("Array #{active_array.nickname}'s private IP address[es]: #{array_instances.map(&:private_ip_address) * ', '}")
Rightstuff::Credentials assumes you have a YAMl file called ~/.rightstuff It should be of the form:
---
:main:
:credentials:
:username: myusername
:password: mypass
:account: 1234
Installation
$ sudo gem install rightstuff
Online
Alternatives
-
github.com/rightscale/right_link - RightScale’s messaging API for live servers
Contributors
-
joeyates
-
kwerle
TODO
-
Cache connections