Sha256: afded74dbb064d27eb4dba15b9cc1d06e914bd14414814d7aeb09715c64c70d0

Contents?: true

Size: 1.5 KB

Versions: 17

Compression:

Stored size: 1.5 KB

Contents

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

o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
  opts.on('-n name', '--name name', 'Update hosts for local pool named [name]')    { |p| optioner.cloudname p }
end

o.loaded_clouds.each do |cloud|
  with_cloud(cloud) do
    vputs "Cloud: #{name}"
    
    new_hosts_listing = returning Array.new do |arr|
      
      puts list_of_running_instances
      
      list_of_running_instances.each do |ri|
        vputs ri.hosts_file_listing_for(self)
        arr << ri.hosts_file_listing_for(self)
      end
      other_clouds.each do |other|
        other.list_of_running_instances.each do |ri|
          vputs ri.hosts_file_listing_for(self)
          arr << ri.hosts_file_listing_for(self)
        end
      end
    end.join("\n")
    
    if testing
      puts new_hosts_listing
    else
      new_hosts_file = "#{Base.manifest_path}/classes/hosts.pp"
      
      arr = returning Array.new do |arr|
        new_hosts_listing.split(/\n/).each do |line|
          parts = line.split(/\t/).map {|a| a.chomp }
          ip,hostname,aliases = parts[0], parts[1], parts[2..-1]
          vputs "ip: #{ip} for #{hostname} as #{aliases}"
          h = PoolParty::Resources::Host.new(:name => hostname, :ip => Resolv::DNS.new.getaddress(ip).to_s, :alias => aliases)
          arr << h.to_string
        end
      end
      
      ::File.open(new_hosts_file, "w+") {|f| f << arr.join("\n") }
    end
    
  end
end

Version data entries

17 entries across 17 versions & 2 rubygems

Version Path
auser-poolparty-0.2.76 bin/server-update-hosts
auser-poolparty-0.2.77 bin/server-update-hosts
auser-poolparty-0.2.78 bin/server-update-hosts
auser-poolparty-0.2.79 bin/server-update-hosts
auser-poolparty-0.2.80 bin/server-update-hosts
auser-poolparty-0.2.81 bin/server-update-hosts
auser-poolparty-0.2.84 bin/server-update-hosts
auser-poolparty-0.2.85 bin/server-update-hosts
auser-poolparty-0.2.88 bin/server-update-hosts
auser-poolparty-0.2.89 bin/server-update-hosts
auser-poolparty-0.2.90 bin/server-update-hosts
auser-poolparty-0.2.91 bin/server-update-hosts
auser-poolparty-0.2.92 bin/server-update-hosts
auser-poolparty-0.2.93 bin/server-update-hosts
auser-poolparty-0.2.94 bin/server-update-hosts
auser-poolparty-1.0.0 bin/server-update-hosts
poolparty-0.2.84 bin/server-update-hosts