#!/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('-c cloudname', '--cloud name', 'Start cloud by this name') { |c| optioner.cloudname c } end load_pool(o.spec || Binary.get_existing_spec_location) @testing = o.testing @clouds = o.cloudname ? {:cloud => cloud(o.cloudname.downcase.to_sym)} : clouds @clouds.each do |name, cloud| with_cloud(cloud, {:testing => @testing, :verbose => (o.verbose || false)}) do puts header("Starting cloud") puts "#{list_of_running_instances.size} running instances (#{minimum_instances} - #{maximum_instances})" if list_of_running_instances.size <= 1 puts "Starting the master instance" if testing puts("\tNot launching while in testing mode") else provisioning_in_progress vputs "Launching and configuring the master" launch_and_configure_master! provisioning_complete end end puts open(::File.join(File.dirname(__FILE__), "..", "lib", "poolparty", "config", "postlaunchmessage.txt")).read ^ {:master_ip => master.ip.chomp} clear_base_directory unless testing end end