Sha256: f15076416ee3e3ca80a991c5f87379ec413ceb57fe0429b99593101db6a1de12

Contents?: true

Size: 1.57 KB

Versions: 1

Compression:

Stored size: 1.57 KB

Contents

#!/usr/bin/env ruby
$:.unshift(File.dirname(__FILE__) + "/../lib")
require "poolparty"

require 'git-style-binary/command'

GitStyleBinary.command do
  @theme = :short

  version "PoolParty #{$0} command"
  banner <<-EOS
Usage: #{$0} #{all_options_string}

shows output about the clouds.rb

EOS

  short_desc "shows output about the clouds.rb"

  run do |command|

    @loaded_clouds.each do |cld|

      msg = [
        "Cloud: #{cld.name}",
        "----------------------------",
        "Running Instances:   #{cld.nodes.size}",
        "Minimum instances:   #{cld.minimum_instances}",
        "Maximum instances:   #{cld.maximum_instances}",
        "Running on:          #{cld.cloud_provider.name}",
        "Keypair:             #{cld.keypair.basename}",
        "Security group:      #{cld.cloud_provider.security_group_names.join(', ')}",
        "Availability zones:  #{cld.cloud_provider.availability_zones.join(', ')}",
        "User:                #{cld.user}",
        "Active recipes:      #{cld.chef._recipes(cld.pool.chef_step).join ", " }"
      ]

      if cld.load_balancers.size > 0
        load_balancers = cld.cloud_provider.load_balancers.first.running_load_balancers.map {|a| a[:dns_name]}
        msg << "Load balancers:      #{load_balancers.join("\n\t\t\t")}"
      end

      if cld.rds_instances.size > 0
        available = cld.cloud_provider.available_rds_instances.map{|r| "#{r.instance_id}\t#{r.current_status.Endpoint.Address}" }
        available.unshift 'RDS Instances:'

        msg << available.join("\n\t\t\t")
      end

      puts msg.flatten

    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
poolparty-1.6.9 bin/cloud-show