Sha256: 80f7190c27bf4c6ccd843046495608764217ab89dad681eee95180dd7ba7fc2b

Contents?: true

Size: 1.05 KB

Versions: 4

Compression:

Stored size: 1.05 KB

Contents

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

available_monitors = PoolParty::Monitors.available_monitors
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
  opts.on('-n name', '--name name', 'Host name')    { |h| optioner.hostname h }
  opts.on('-l', '--no-shell', 'No shell') {optioner.noshell true}
end

o.loaded_clouds.each do |cloud|
  
  with_cloud(cloud) do
    
    @nonprovisioned_nodes = list_of_running_instances.map {|a| a.name } - cloud.get_current_nodes
    # @tp = ThreadPool.new(10)
    @nonprovisioned_nodes.each do |node|
      vputs "Provisioning #{node}"
      next if node == "master"
      # @tp.process do
      str = returning Array.new do |s|
        s << "/usr/sbin/puppetca --clean #{node}.compute-1.internal"
        s << "/usr/sbin/puppetca --clean #{node}.ec2.internal"
      end.join(";")
      cmd = ". /etc/profile && #{str};cloud-provision -i #{node.gsub(/node/, '')};#{str}"
      vputs "Executing #{cmd}"
      `#{cmd}`
    end
    # @tp.join
  end  
  
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
auser-poolparty-0.2.57 bin/cloud-ensure-provisioning
auser-poolparty-0.2.58 bin/cloud-ensure-provisioning
auser-poolparty-0.2.59 bin/cloud-ensure-provisioning
auser-poolparty-0.2.60 bin/cloud-ensure-provisioning