poolparty 1.6.8 → 1.6.9

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.
@@ -4,7 +4,11 @@ module PoolParty
4
4
  attr_accessor :verbose, :very_verbose, :debugging, :very_debugging, :auto_execute
5
5
 
6
6
  def cloud(name, &block)
7
- clouds[name.to_s] = Cloud.new(name.to_s, {:parent => self}, &block)
7
+ c = Cloud.new(name.to_s, {:parent => self}, &block)
8
+ clouds[name.to_s] = c
9
+ # Create a dummy security group for tagging purposes. Do not want to
10
+ # conflict with advance usage of security groups
11
+ c.security_group "#poolparty-#{c.proper_name}"
8
12
  end
9
13
 
10
14
  def clouds
@@ -31,12 +35,42 @@ module PoolParty
31
35
  end
32
36
  end
33
37
 
38
+ # === Description
39
+ #
40
+ # Set / Get the chef_step which will be executed on the remote
41
+ # host
42
+ def chef_step name = nil
43
+ @selected_chef_step ||= :default
44
+ if name
45
+ @selected_chef_step = name.to_sym
46
+ end
47
+ @selected_chef_step
48
+ end
49
+
34
50
  def run
35
51
  clouds.each do |cloud_name, cld|
36
52
  puts "----> Starting to build cloud #{cloud_name}"
37
53
  cld.run
38
54
  end
39
55
  end
56
+
57
+ def to_hash
58
+ c = clouds.collect do |cloud_name, cld|
59
+ nodes = cld.nodes.collect do |node|
60
+ h = {}
61
+ [:dns_name, :private_ip, :public_ip].each do |f|
62
+ h[f] = node[f]
63
+ end
64
+ h
65
+ end
66
+ { cloud_name => nodes }
67
+ end
68
+ h = c.inject({})do |old, new|
69
+ old.merge! new
70
+ end
71
+ {:clouds => h }
72
+ end
73
+
40
74
  end
41
75
 
42
- end
76
+ end
metadata CHANGED
@@ -1,12 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: poolparty
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 1
7
- - 6
8
- - 8
9
- version: 1.6.8
4
+ version: 1.6.9
10
5
  platform: ruby
11
6
  authors:
12
7
  - Ari Lerner
@@ -16,7 +11,7 @@ autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
13
 
19
- date: 2010-03-23 00:00:00 -07:00
14
+ date: 2010-04-16 00:00:00 -07:00
20
15
  default_executable:
21
16
  dependencies: []
22
17
 
@@ -266,6 +261,7 @@ files:
266
261
  - lib/cloud_providers/ec2/helpers/revoke.rb
267
262
  - lib/cloud_providers/ec2/helpers/security_group.rb
268
263
  - lib/cloud_providers/remote_instance.rb
264
+ - lib/cloud_providers/remote_instance.rb.orig
269
265
  - lib/core/array.rb
270
266
  - lib/core/hash.rb
271
267
  - lib/core/object.rb
@@ -279,6 +275,7 @@ files:
279
275
  - lib/poolparty/chef_client.rb
280
276
  - lib/poolparty/chef_solo.rb
281
277
  - lib/poolparty/cloud.rb
278
+ - lib/poolparty/cloud.rb.orig
282
279
  - lib/poolparty/pool.rb
283
280
  - lib/poolparty/pool_party_error.rb
284
281
  - test/fixtures/bad_perms_test_key
@@ -475,20 +472,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
475
472
  requirements:
476
473
  - - ">="
477
474
  - !ruby/object:Gem::Version
478
- segments:
479
- - 0
480
475
  version: "0"
476
+ version:
481
477
  required_rubygems_version: !ruby/object:Gem::Requirement
482
478
  requirements:
483
479
  - - ">="
484
480
  - !ruby/object:Gem::Version
485
- segments:
486
- - 0
487
481
  version: "0"
482
+ version:
488
483
  requirements: []
489
484
 
490
485
  rubyforge_project:
491
- rubygems_version: 1.3.6
486
+ rubygems_version: 1.3.5
492
487
  signing_key:
493
488
  specification_version: 3
494
489
  summary: Self-healing, auto-scaling system administration, provisioning and maintaining tool that makes cloud computing easier.