Sha256: 9fe6ededc8a4d22eb96af11e81fc3e025c9818675b52dbc0ccc0b0c7d3c98721

Contents?: true

Size: 931 Bytes

Versions: 1

Compression:

Stored size: 931 Bytes

Contents

#!/usr/bin/env ruby
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
require "poolparty/lite"
require "poolparty/core/array"

list_type = ARGV.shift || "ip"

json_file = ARGV[0] || PoolParty::Default.properties_hash_file
raise "ERROR: no json_file given" if !json_file
schema = PoolParty::Schema.new( ::File.read(json_file) )

inst_array = PoolParty::Neighborhoods.load_default.instances

if !inst_array || inst_array.empty?
  remote_base = PoolParty::Remote.module_eval( schema.options.remoter_base.camelcase )
  instances = remote_base.send :describe_instances, schema.options
  inst_array = instances.map {|inst| inst.send list_type.to_sym }.compact
  if ['ip', 'public_id', 'internal_ip'].include? list_type
    inst_array.delete_if{|n| !n.match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/) }
  end
  print inst_array.compact.join("\t")
else
  print inst_array.map {|inst| inst.send list_type.to_sym }.compact.join("\t")
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
auser-poolparty-1.2.7 bin/server-list-active