Sha256: c61c258794e0b85cd999a53d3b953804dd967cc94d042eed03406ea0277e646a

Contents?: true

Size: 1.13 KB

Versions: 3

Compression:

Stored size: 1.13 KB

Contents

#!/usr/bin/env ruby
$:.unshift(File.dirname(__FILE__) + "/../lib")
require "poolparty"
# require "poolpartycl"
require 'git-style-binary/command'

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

  starts a single instance in your cloud.
EOS

  short_desc "starts a single instance in your cloud"

  run do |command|    
    
    @loaded_clouds.each do |cld|

      if cld.nodes(:status => "running").size.zero?
        puts header("Starting cloud #{cld.name} (#{cld.keypair})")
        puts "#{cld.nodes(:status => "running").size} running instances (#{cld.minimum_instances} - #{cld.maximum_instances})"
        
        cld.launch_instance!(:cloud_name => cld.name) do |node|
          
          ::PoolParty::Provision::BootStrapper.new(node.ip, :cloud => cld)
          ::PoolParty::Provision::DrConfigure.new(node.ip,  :cloud => cld)
          
          puts <<-EOM
            Your cloud has started. Your ip is #{node.ip}
          EOM
        end
      
      else
        puts <<-EOE
          Your cloud is already running.
        EOE
      end
      
    end
    
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
auser-poolparty-1.2.3 bin/cloud-start
auser-poolparty-1.2.4 bin/cloud-start
auser-poolparty-1.2.7 bin/cloud-start