auser-poolparty 0.2.44 → 0.2.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Manifest.txt +3 -1
- data/bin/cloud +11 -21
- data/bin/cloud-add-keypair +18 -13
- data/bin/cloud-configure +3 -11
- data/bin/cloud-contract +7 -12
- data/bin/cloud-ensure-provisioning +2 -11
- data/bin/cloud-expand +3 -10
- data/bin/cloud-handle-load +3 -9
- data/bin/cloud-list +3 -9
- data/bin/cloud-maintain +2 -9
- data/bin/cloud-osxcopy +3 -9
- data/bin/cloud-provision +4 -9
- data/bin/cloud-refresh +2 -9
- data/bin/cloud-run +3 -4
- data/bin/cloud-ssh +3 -2
- data/bin/cloud-start +7 -13
- data/bin/cloud-terminate +4 -7
- data/bin/pool +11 -12
- data/bin/pool-describe +0 -1
- data/bin/pool-list +3 -9
- data/bin/pool-start +3 -10
- data/generators/poolspec/USAGE +2 -2
- data/generators/poolspec/poolspec_generator.rb +2 -1
- data/generators/poolspec/templates/pool_spec_template.erb +3 -2
- data/lib/erlang/messenger/useful_snippets +2 -2
- data/lib/poolparty/aska/aska.rb +5 -6
- data/lib/poolparty/base_packages/haproxy.rb +2 -2
- data/lib/poolparty/core/string.rb +1 -1
- data/lib/poolparty/exceptions/CloudNotFoundException.rb +7 -0
- data/lib/poolparty/helpers/binary.rb +1 -1
- data/lib/poolparty/helpers/optioner.rb +34 -12
- data/lib/poolparty/modules/cloud_dsl.rb +13 -0
- data/lib/poolparty/net/messenger.rb +1 -1
- data/lib/poolparty/net/remote_bases/ec2.rb +162 -145
- data/lib/poolparty/net/remoter.rb +8 -4
- data/lib/poolparty/plugins/git.rb +5 -1
- data/lib/poolparty/pool/base.rb +1 -1
- data/lib/poolparty/pool/cloud.rb +7 -2
- data/lib/poolparty/pool/resource.rb +1 -1
- data/lib/poolparty/pool/resources/mount.rb +22 -0
- data/lib/poolparty/version.rb +1 -1
- data/poolparty.gemspec +5 -4
- data/spec/poolparty/modules/configurable_spec.rb +4 -1
- data/spec/poolparty/pool/base_spec.rb +2 -2
- data/spec/poolparty/pool/plugin_model_spec.rb +2 -3
- data/website/index.html +1 -1
- metadata +5 -4
- data/bin/pool-provision +0 -34
data/Manifest.txt
CHANGED
@@ -25,7 +25,6 @@ bin/pool
|
|
25
25
|
bin/pool-console
|
26
26
|
bin/pool-describe
|
27
27
|
bin/pool-list
|
28
|
-
bin/pool-provision
|
29
28
|
bin/pool-spec
|
30
29
|
bin/pool-start
|
31
30
|
bin/server-build-messenger
|
@@ -311,6 +310,7 @@ lib/poolparty/core/symbol.rb
|
|
311
310
|
lib/poolparty/core/time.rb
|
312
311
|
lib/poolparty/dependency_resolutions/base.rb
|
313
312
|
lib/poolparty/dependency_resolutions/puppet.rb
|
313
|
+
lib/poolparty/exceptions/CloudNotFoundException.rb
|
314
314
|
lib/poolparty/exceptions/LoadRulesException.rb
|
315
315
|
lib/poolparty/exceptions/MasterException.rb
|
316
316
|
lib/poolparty/exceptions/RemoteException.rb
|
@@ -326,6 +326,7 @@ lib/poolparty/helpers/optioner.rb
|
|
326
326
|
lib/poolparty/helpers/provisioner_base.rb
|
327
327
|
lib/poolparty/helpers/provisioners/master.rb
|
328
328
|
lib/poolparty/helpers/provisioners/slave.rb
|
329
|
+
lib/poolparty/modules/cloud_dsl.rb
|
329
330
|
lib/poolparty/modules/cloud_resourcer.rb
|
330
331
|
lib/poolparty/modules/configurable.rb
|
331
332
|
lib/poolparty/modules/definable_resource.rb
|
@@ -365,6 +366,7 @@ lib/poolparty/pool/resources/exec.rb
|
|
365
366
|
lib/poolparty/pool/resources/file.rb
|
366
367
|
lib/poolparty/pool/resources/gem_package.rb
|
367
368
|
lib/poolparty/pool/resources/host.rb
|
369
|
+
lib/poolparty/pool/resources/mount.rb
|
368
370
|
lib/poolparty/pool/resources/package.rb
|
369
371
|
lib/poolparty/pool/resources/remote_file.rb
|
370
372
|
lib/poolparty/pool/resources/service.rb
|
data/bin/cloud
CHANGED
@@ -3,28 +3,18 @@ $:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
5
|
|
6
|
-
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
10
|
-
|
11
|
-
|
12
|
-
# Cloud actions:
|
13
|
-
# #{Binary.list_binaries_for("cloud")}
|
14
|
-
# EOB
|
15
|
-
# end
|
6
|
+
name = ARGV.select {|arg| arg if Binary.available_binaries_for("cloud").include?(arg) }.first
|
7
|
+
# If the options include -h and they don't include a valid command, then we can just pass the
|
8
|
+
# original options back, but if they do contain a binary, we don't want -h getting through to
|
9
|
+
# these options, so we'll strip it if it's included
|
10
|
+
DUP_ARG = ARGV.dup
|
11
|
+
new_args = DUP_ARG.reject {|arg| Binary.available_binaries_for("cloud").include?(arg) }.empty? ? ARGV : (name ? (DUP_ARG.delete("-h"); DUP_ARG) : DUP_ARG)
|
16
12
|
|
17
|
-
|
13
|
+
# Let's make sure if no command is passed in that we show the help message
|
14
|
+
new_args.push("-h") unless name
|
18
15
|
|
19
|
-
#
|
20
|
-
|
21
|
-
puts "Binary required"
|
22
|
-
puts <<-EOB
|
23
|
-
Usage: cloud <specfile> <action> <options>
|
24
|
-
Cloud actions:
|
25
|
-
#{Binary.list_binaries_for("cloud")}
|
26
|
-
EOB
|
27
|
-
exit
|
16
|
+
o = PoolParty::Optioner.new(new_args, {:extra_help => "\nCloud actions\n#{Binary.list_binaries_for("cloud")}\n\n", :abstract => true}) do |opts, optioner|
|
17
|
+
opts.on('-n cloudname', '--name name', 'Address this cloud') { |c| optioner.cloudname c }
|
28
18
|
end
|
29
19
|
|
30
20
|
program_name = "#{File.basename($0)}-#{name}"
|
@@ -36,5 +26,5 @@ command_line = "#{program_location}"
|
|
36
26
|
if Binary.available_binaries_for("cloud").include?(name)
|
37
27
|
system command_line, *ARGV
|
38
28
|
else
|
39
|
-
puts "Unknown poolparty binary: #{
|
29
|
+
puts "Unknown poolparty binary: #{name}"
|
40
30
|
end
|
data/bin/cloud-add-keypair
CHANGED
@@ -2,22 +2,27 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-n name', '--name name', '
|
7
|
+
opts.on('-n name', '--name name', 'Add the keypair for cloud name') { |c| optioner.cloudname c }
|
8
|
+
opts.on('-l', '--listing', 'List the keypairs for the clouds') { optioner.listkeys true }
|
7
9
|
end
|
8
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
9
|
-
|
10
|
-
@location = o.location ? o.location : "remote"
|
11
|
-
|
12
|
-
include Remote
|
13
10
|
|
14
|
-
|
15
|
-
|
16
|
-
|
11
|
+
if o.listkeys
|
12
|
+
|
13
|
+
puts "Cloud\t\tKeypair"
|
14
|
+
puts "--------------------------"
|
15
|
+
o.loaded_clouds.each do |cloud|
|
16
|
+
puts "#{cloud.name}\t--\t#{cloud.keypair}"
|
17
|
+
end
|
18
|
+
|
19
|
+
else
|
17
20
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
21
|
+
o.loaded_clouds.each do |cloud|
|
22
|
+
with_cloud(cloud) do
|
23
|
+
vputs header("Creating keypair for #{name}")
|
24
|
+
create_keypair unless testing
|
25
|
+
end
|
26
|
+
end
|
22
27
|
|
23
28
|
end
|
data/bin/cloud-configure
CHANGED
@@ -2,21 +2,13 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-c [master|slaves|all]', '--class [master|slaves|all]', 'Provision class (default: all)') { |c| optioner.provision_class c }
|
7
|
-
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
8
7
|
end
|
9
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
|
-
|
11
|
-
@provision_class = o.provision_class || "all"
|
12
|
-
|
13
|
-
include Remote
|
14
|
-
|
15
|
-
@clouds = o.cloudname ? {:cloud => cloud(o.cloudname.downcase.to_sym)} : clouds
|
16
8
|
|
17
|
-
|
9
|
+
o.loaded_clouds.each do |cloud|
|
18
10
|
|
19
|
-
with_cloud(cloud
|
11
|
+
with_cloud(cloud) do
|
20
12
|
|
21
13
|
# hide_output do
|
22
14
|
# if provision_class == "master" || provision_class == "all"
|
data/bin/cloud-contract
CHANGED
@@ -6,17 +6,12 @@ require "poolpartycl"
|
|
6
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
7
7
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
8
8
|
end
|
9
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
9
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
puts header("Contracting cloud #{name}")
|
19
|
-
puts "#{list_of_running_instances.size} running instances (#{minimum_instances} minimum instances)"
|
20
|
-
puts testing ? "Not contracting (test mode)" : "Contracting the cloud if possible"
|
21
|
-
contract_cloud_if_necessary( !testing )
|
10
|
+
o.loaded_clouds.each do |cl|
|
11
|
+
with_cloud(cl) do
|
12
|
+
puts header("Contracting cloud #{name}")
|
13
|
+
puts "#{list_of_running_instances.size} running instances (#{minimum_instances} minimum instances)"
|
14
|
+
puts testing ? "Not contracting (test mode)" : "Contracting the cloud if possible"
|
15
|
+
contract_cloud_if_necessary( !testing )
|
16
|
+
end
|
22
17
|
end
|
@@ -8,21 +8,12 @@ o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
|
8
8
|
opts.on('-n name', '--name name', 'Host name') { |h| optioner.hostname h }
|
9
9
|
opts.on('-l', '--no-shell', 'No shell') {optioner.noshell true}
|
10
10
|
end
|
11
|
-
|
12
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
13
|
-
|
14
|
-
include Remote
|
15
|
-
|
16
|
-
@clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
|
17
11
|
@hostname = o.hostname ? o.hostname : `hostname`.chomp
|
18
|
-
|
19
12
|
@hostname = "node0" if @hostname == "master" # Quick fix to make sure we have a node running on the master as well
|
20
13
|
|
21
|
-
|
14
|
+
o.loaded_clouds.each do |cloud|
|
22
15
|
|
23
|
-
with_cloud(cloud, {:
|
24
|
-
# TODO: Change this to be app specfic
|
25
|
-
# SECURITY RISK
|
16
|
+
with_cloud(cloud, {:hostname => @hostname}) do
|
26
17
|
|
27
18
|
boot_file = "#{Messenger.append_dir}/pm_node_rel-0.1"
|
28
19
|
command = Messenger.erl_command(hostname, "-boot #{boot_file} #{noshell ? "" : "-detached -heart"}")
|
data/bin/cloud-expand
CHANGED
@@ -4,19 +4,12 @@ require "poolparty"
|
|
4
4
|
require "poolpartycl"
|
5
5
|
|
6
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
7
|
-
opts.on('-n name', '--name name', '
|
7
|
+
opts.on('-n name', '--name name', 'Expand the cloud on this name') { |c| optioner.cloudname c }
|
8
8
|
end
|
9
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
9
|
|
11
|
-
|
10
|
+
o.loaded_clouds.each do |cloud|
|
12
11
|
|
13
|
-
|
14
|
-
|
15
|
-
@clouds = extract_cloud_from_options o
|
16
|
-
|
17
|
-
@clouds.each do |cloud|
|
18
|
-
|
19
|
-
with_cloud(cloud, {:testing => @testing, :verbose => o.verbose}) do
|
12
|
+
with_cloud(cloud) do
|
20
13
|
vputs header("Expanding cloud #{name}")
|
21
14
|
vputs "#{list_of_running_instances.size} running instances of #{maximum_instances} possible instances"
|
22
15
|
vputs testing ? "Not expanding (test mode)" : "Expanding the cloud"
|
data/bin/cloud-handle-load
CHANGED
@@ -2,20 +2,14 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
7
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
7
8
|
end
|
8
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
9
|
-
|
10
|
-
@location = o.location ? o.location : "remote"
|
11
|
-
|
12
|
-
include Remote
|
13
|
-
|
14
|
-
@clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
|
15
9
|
|
16
|
-
|
10
|
+
o.loaded_clouds.each do |cloud|
|
17
11
|
|
18
|
-
with_cloud(cloud
|
12
|
+
with_cloud(cloud) do
|
19
13
|
vputs header("Load handling cloud #{name}")
|
20
14
|
if should_expand_cloud?
|
21
15
|
vputs "Expanding cloud based on load"
|
data/bin/cloud-list
CHANGED
@@ -2,23 +2,17 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
7
|
opts.on('-f [remote|local]', '--from [remote|local]', 'Remote or local (default: local)') { |o| optioner.location o }
|
7
8
|
opts.on('-r', '--remote', 'Remote listing') { optioner.location "remote" }
|
8
9
|
opts.on('-l', '--local', 'Local listing') { optioner.location "local" }
|
9
10
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
10
11
|
end
|
11
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
12
|
-
|
13
|
-
@location = o.location ? o.location : "remote"
|
14
|
-
|
15
|
-
include Remote
|
16
|
-
|
17
|
-
@clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
|
18
12
|
|
19
|
-
|
13
|
+
o.loaded_clouds.each do |cloud|
|
20
14
|
|
21
|
-
with_cloud(cloud
|
15
|
+
with_cloud(cloud) do
|
22
16
|
puts header("Listing cloud #{name}")
|
23
17
|
puts subheader("Active instances")
|
24
18
|
puts list_of_running_instances.map{|a| a.to_s}.join("\n")
|
data/bin/cloud-maintain
CHANGED
@@ -8,17 +8,10 @@ o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
|
8
8
|
opts.on('-l', '--local', 'Local listing') { optioner.location "local" }
|
9
9
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
10
10
|
end
|
11
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
12
11
|
|
13
|
-
|
12
|
+
o.loaded_clouds.each do |cloud|
|
14
13
|
|
15
|
-
|
16
|
-
|
17
|
-
@clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
|
18
|
-
|
19
|
-
@clouds.each do |name, cloud|
|
20
|
-
|
21
|
-
with_cloud(cloud, {:location => @location, :testing => o.testing, :verbose => o.verbose}) do
|
14
|
+
with_cloud(cloud) do
|
22
15
|
vputs header("Maintaining cloud #{name}")
|
23
16
|
logger.warn "Maintaining cloud"
|
24
17
|
logger.warn rules_values
|
data/bin/cloud-osxcopy
CHANGED
@@ -2,18 +2,12 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-n name', '--name name', '
|
7
|
+
opts.on('-n name', '--name name', 'Copy the master ip for this cloud') { |c| optioner.cloudname c }
|
7
8
|
end
|
8
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
9
|
-
|
10
|
-
@location = o.location ? o.location : "remote"
|
11
|
-
|
12
|
-
include Remote
|
13
|
-
|
14
|
-
@clouds = o.cloudname ? [cloud(o.cloudname.downcase.to_sym)] : clouds
|
15
9
|
|
16
|
-
|
10
|
+
o.loaded_clouds.each do |cloud|
|
17
11
|
|
18
12
|
with_cloud(cloud, {:location => @location}) do
|
19
13
|
Kernel.system "echo #{master.ip.chomp} | pbcopy"
|
data/bin/cloud-provision
CHANGED
@@ -2,20 +2,15 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-
|
7
|
+
opts.on('-p', '--slave', 'Provision slave (default: false)') { optioner.provision_slave true }
|
7
8
|
opts.on('-i num', '--id num', 'Instance num to provision') { |i| optioner.instance_num i }
|
8
9
|
end
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
include Remote
|
13
|
-
|
14
|
-
@clouds = extract_cloud_from_options o
|
15
|
-
|
16
|
-
@clouds.each do |cloud|
|
11
|
+
o.loaded_clouds.each do |cloud|
|
17
12
|
|
18
|
-
with_cloud(cloud
|
13
|
+
with_cloud(cloud) do
|
19
14
|
|
20
15
|
instance_num = instance_number.to_i if instance_number
|
21
16
|
|
data/bin/cloud-refresh
CHANGED
@@ -6,17 +6,10 @@ require "poolpartycl"
|
|
6
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
7
7
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
8
8
|
end
|
9
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
9
|
|
11
|
-
|
12
|
-
|
13
|
-
include Remote
|
14
|
-
|
15
|
-
@clouds = o.cloudname ? {:cloud => cloud(o.cloudname.downcase.to_sym)} : clouds
|
16
|
-
|
17
|
-
@clouds.each do |name, cloud|
|
10
|
+
o.loaded_clouds.each do |cloud|
|
18
11
|
|
19
|
-
with_cloud(cloud
|
12
|
+
with_cloud(cloud) do
|
20
13
|
cmd = <<-EOE
|
21
14
|
puppetrun --host #{list_of_node_names.join(", --host ")}
|
22
15
|
EOE
|
data/bin/cloud-run
CHANGED
@@ -11,9 +11,8 @@ o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
|
11
11
|
opts.on('-c command', '--command command', 'Command to run on the instance') { |c| optioner.command c }
|
12
12
|
end
|
13
13
|
|
14
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
15
|
-
|
16
14
|
@cmd = o.command if (o.command)
|
17
|
-
@cloud = o.cloudname ? cloud(o.cloudname.downcase.to_sym) : cloud(clouds.keys.first)
|
18
15
|
|
19
|
-
|
16
|
+
o.loaded_clouds.each do |cl|
|
17
|
+
@cloud.run_command_on_instance_number( @cmd, o.num.to_i || 0 ) if @cloud
|
18
|
+
end
|
data/bin/cloud-ssh
CHANGED
@@ -2,12 +2,13 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
7
|
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
7
8
|
opts.on('-i num', '--id num', 'Instance num to ssh (default: 0)') { |i| optioner.num i }
|
8
9
|
end
|
9
10
|
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
11
|
|
11
|
-
@cloud = o.
|
12
|
+
@cloud = o.loaded_clouds.first
|
12
13
|
|
13
|
-
|
14
|
+
@cloud.ssh_into_instance_number( o.num.to_i || 0 ) if @cloud
|
data/bin/cloud-start
CHANGED
@@ -2,21 +2,15 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-
|
7
|
+
opts.on('-n cloudname', '--name name', 'Start cloud by this name') { |c| optioner.cloudname c }
|
7
8
|
end
|
8
9
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
@clouds = o.cloudname ? {:cloud => cloud(o.cloudname.downcase.to_sym)} : clouds
|
14
|
-
|
15
|
-
@clouds.each do |name, cloud|
|
16
|
-
|
17
|
-
with_cloud(cloud, {:testing => @testing, :verbose => (o.verbose || false)}) do
|
18
|
-
puts header("Starting cloud")
|
19
|
-
puts "#{list_of_running_instances.size} running instances (#{minimum_instances} - #{maximum_instances})"
|
10
|
+
o.loaded_clouds.each do |cloud|
|
11
|
+
with_cloud(cloud) do
|
12
|
+
vputs header("Starting cloud")
|
13
|
+
vputs "#{list_of_running_instances.size} running instances (#{minimum_instances} - #{maximum_instances})"
|
20
14
|
if list_of_running_instances.size <= 1
|
21
15
|
puts "Starting the master instance"
|
22
16
|
if testing
|
@@ -28,7 +22,7 @@ load_pool(o.spec || Binary.get_existing_spec_location)
|
|
28
22
|
provisioning_complete
|
29
23
|
end
|
30
24
|
end
|
31
|
-
|
25
|
+
vputs open(::File.join(File.dirname(__FILE__), "..", "lib", "poolparty", "config", "postlaunchmessage.txt")).read ^ {:master_ip => master.ip.chomp}
|
32
26
|
clear_base_directory unless testing
|
33
27
|
end
|
34
28
|
|
data/bin/cloud-terminate
CHANGED
@@ -2,17 +2,14 @@
|
|
2
2
|
$:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
|
3
3
|
require "poolparty"
|
4
4
|
require "poolpartycl"
|
5
|
+
|
5
6
|
o = PoolParty::Optioner.new(ARGV) do |opts, optioner|
|
6
|
-
opts.on('-
|
7
|
-
opts.on('-n name', '--name name', 'Listing for cloud name') { |c| optioner.cloudname c }
|
7
|
+
opts.on('-n name', '--name name', 'Terminate the cloud of this name') { |c| optioner.cloudname c }
|
8
8
|
end
|
9
|
-
load_pool(o.spec || Binary.get_existing_spec_location)
|
10
|
-
|
11
|
-
@clouds = o.cloudname ? {:cloud => cloud(o.cloudname.downcase.to_sym)} : clouds
|
12
9
|
|
13
|
-
|
10
|
+
o.loaded_clouds.each do |cloud|
|
14
11
|
|
15
|
-
with_cloud(cloud
|
12
|
+
with_cloud(cloud) do
|
16
13
|
|
17
14
|
list_of_running_instances.each do |inst|
|
18
15
|
puts "Shutting down #{inst.instance_id}"
|