Skip to content

Instantly share code, notes, and snippets.

@kshep
Created August 18, 2011 18:25
Show Gist options
  • Save kshep/1154764 to your computer and use it in GitHub Desktop.
Save kshep/1154764 to your computer and use it in GitHub Desktop.
Script to dump EY app info
#!/usr/bin/env ruby
require 'rubygems'
require 'json'
def dump(env, dna)
puts
puts env.upcase
puts
instances = dna['engineyard']["environment"]["instances"]
printf("%40s %-50s %-50s\n",'name/role', 'public_hostname', 'private_hostname')
puts "-" * 170
instances.sort_by { |i| i['role'] }.each do |inst|
public_hostname = inst['public_hostname']
private_hostname = inst['private_hostname']
name = inst['name']
role = inst['role']
if name.nil?
name_role = role
else
name_role = "#{name} / #{role}"
end
printf("%40s %-50s %-50s\n", name_role, public_hostname, private_hostname)
end
puts
end
['demo', 'staging', 'production'].each do |env|
dump(env, JSON[`ey ssh 'sudo cat /etc/chef/dna.json' --environment #{env}`])
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment