poolparty 1.6.8 → 1.6.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -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.