cluster_chef 3.0.8 → 3.0.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.
- data/README.md +1 -2
- data/VERSION +1 -1
- data/cluster_chef.gemspec +5 -5
- data/lib/cluster_chef.rb +2 -0
- data/lib/cluster_chef/compute.rb +1 -1
- data/lib/cluster_chef/discovery.rb +14 -7
- data/lib/cluster_chef/fog_layer.rb +5 -3
- metadata +24 -24
data/README.md
CHANGED
@@ -212,8 +212,7 @@ to the chef server. (see below for details).
|
|
212
212
|
Hooray! You're ready to launch a cluster:
|
213
213
|
|
214
214
|
```ruby
|
215
|
-
knife cluster launch demosimple homebase --bootstrap
|
216
|
-
</pre>
|
215
|
+
knife cluster launch demosimple homebase --bootstrap```
|
217
216
|
|
218
217
|
It will kick off a node and then bootstrap it. You'll see it install a whole bunch of things. Yay.
|
219
218
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.0.
|
1
|
+
3.0.9
|
data/cluster_chef.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "cluster_chef"
|
8
|
-
s.version = "3.0.
|
8
|
+
s.version = "3.0.9"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Infochimps"]
|
12
|
-
s.date = "2011-12-
|
12
|
+
s.date = "2011-12-16"
|
13
13
|
s.description = "cluster_chef allows you to orchestrate not just systems but clusters of machines. It includes a powerful layer on top of knife and a collection of cloud cookbooks."
|
14
14
|
s.email = "coders@infochimps.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -83,7 +83,7 @@ Gem::Specification.new do |s|
|
|
83
83
|
s.add_development_dependency(%q<rspec>, ["~> 2.5"])
|
84
84
|
s.add_development_dependency(%q<yard>, ["~> 0.6"])
|
85
85
|
s.add_development_dependency(%q<configliere>, ["~> 0.4.8"])
|
86
|
-
s.add_runtime_dependency(%q<cluster_chef-knife>, ["= 3.0.
|
86
|
+
s.add_runtime_dependency(%q<cluster_chef-knife>, ["= 3.0.9"])
|
87
87
|
else
|
88
88
|
s.add_dependency(%q<chef>, ["~> 0.10.4"])
|
89
89
|
s.add_dependency(%q<fog>, ["~> 1.1.1"])
|
@@ -94,7 +94,7 @@ Gem::Specification.new do |s|
|
|
94
94
|
s.add_dependency(%q<rspec>, ["~> 2.5"])
|
95
95
|
s.add_dependency(%q<yard>, ["~> 0.6"])
|
96
96
|
s.add_dependency(%q<configliere>, ["~> 0.4.8"])
|
97
|
-
s.add_dependency(%q<cluster_chef-knife>, ["= 3.0.
|
97
|
+
s.add_dependency(%q<cluster_chef-knife>, ["= 3.0.9"])
|
98
98
|
end
|
99
99
|
else
|
100
100
|
s.add_dependency(%q<chef>, ["~> 0.10.4"])
|
@@ -106,7 +106,7 @@ Gem::Specification.new do |s|
|
|
106
106
|
s.add_dependency(%q<rspec>, ["~> 2.5"])
|
107
107
|
s.add_dependency(%q<yard>, ["~> 0.6"])
|
108
108
|
s.add_dependency(%q<configliere>, ["~> 0.4.8"])
|
109
|
-
s.add_dependency(%q<cluster_chef-knife>, ["= 3.0.
|
109
|
+
s.add_dependency(%q<cluster_chef-knife>, ["= 3.0.9"])
|
110
110
|
end
|
111
111
|
end
|
112
112
|
|
data/lib/cluster_chef.rb
CHANGED
data/lib/cluster_chef/compute.rb
CHANGED
@@ -116,7 +116,7 @@ module ClusterChef
|
|
116
116
|
|
117
117
|
# run list elements grouped into :first, :normal and :last
|
118
118
|
def run_list_groups
|
119
|
-
@run_list_info.keys.sort_by{|item| @run_list_info[:rank] }.group_by{|item| @run_list_info[item][:placement] }
|
119
|
+
@run_list_info.keys.sort_by{|item| @run_list_info[item][:rank] }.group_by{|item| @run_list_info[item][:placement] }
|
120
120
|
end
|
121
121
|
|
122
122
|
#
|
@@ -116,7 +116,11 @@ module ClusterChef
|
|
116
116
|
def discover_addresses!
|
117
117
|
servers.each(&:discover_addresses!)
|
118
118
|
end
|
119
|
-
|
119
|
+
|
120
|
+
end # ClusterChef::Cluster
|
121
|
+
end
|
122
|
+
|
123
|
+
module ClusterChef
|
120
124
|
|
121
125
|
def self.fog_connection
|
122
126
|
@fog_connection ||= Fog::Compute.new({
|
@@ -133,18 +137,21 @@ module ClusterChef
|
|
133
137
|
@fog_servers = ClusterChef.fog_connection.servers.all
|
134
138
|
end
|
135
139
|
|
136
|
-
def self.fog_volumes
|
137
|
-
return @fog_volumes if @fog_volumes
|
138
|
-
Chef::Log.debug("Using fog to catalog all volumes")
|
139
|
-
@fog_volumes ||= ClusterChef.fog_connection.volumes
|
140
|
-
end
|
141
|
-
|
142
140
|
def self.fog_addresses
|
143
141
|
return @fog_addresses if @fog_addresses
|
144
142
|
Chef::Log.debug("Using fog to catalog all addresses")
|
145
143
|
@fog_addresses = {}.tap{|hsh| ClusterChef.fog_connection.addresses.each{|fa| hsh[fa.public_ip] = fa } }
|
146
144
|
end
|
147
145
|
|
146
|
+
def self.fog_volumes
|
147
|
+
@fog_volumes || fetch_fog_volumes
|
148
|
+
end
|
149
|
+
|
150
|
+
def self.fetch_fog_volumes
|
151
|
+
Chef::Log.debug("Using fog to catalog all volumes")
|
152
|
+
@fog_volumes = ClusterChef.fog_connection.volumes
|
153
|
+
end
|
154
|
+
|
148
155
|
def self.fog_keypairs
|
149
156
|
return @fog_keypairs if @fog_keypairs
|
150
157
|
Chef::Log.debug("Using fog to catalog all keypairs")
|
@@ -38,9 +38,11 @@ module ClusterChef
|
|
38
38
|
# Takes key-value pairs and idempotently sets those tags on the cloud machine
|
39
39
|
#
|
40
40
|
def fog_create_tags(fog_obj, desc, tags)
|
41
|
-
tags.
|
42
|
-
|
43
|
-
|
41
|
+
tags_to_create = tags.reject{|key, val| fog_obj.tags[key] == val.to_s }
|
42
|
+
return if tags_to_create.empty?
|
43
|
+
step(" tagging #{desc} with #{tags_to_create.inspect}", :green)
|
44
|
+
tags_to_create.each do |key, value|
|
45
|
+
Chef::Log.debug( "tagging #{desc} with #{key} = #{value}" )
|
44
46
|
safely do
|
45
47
|
ClusterChef.fog_connection.tags.create({
|
46
48
|
:key => key, :value => value.to_s, :resource_id => fog_obj.id })
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cluster_chef
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.9
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-12-
|
12
|
+
date: 2011-12-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: chef
|
16
|
-
requirement: &
|
16
|
+
requirement: &70343611049240 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.10.4
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70343611049240
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: fog
|
27
|
-
requirement: &
|
27
|
+
requirement: &70343611048760 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.1.1
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70343611048760
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: formatador
|
38
|
-
requirement: &
|
38
|
+
requirement: &70343611048180 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.2.1
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70343611048180
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: gorillib
|
49
|
-
requirement: &
|
49
|
+
requirement: &70343611047680 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 0.1.7
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70343611047680
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: bundler
|
60
|
-
requirement: &
|
60
|
+
requirement: &70343611047060 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '1'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70343611047060
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: jeweler
|
71
|
-
requirement: &
|
71
|
+
requirement: &70343611046520 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '1.6'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70343611046520
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rspec
|
82
|
-
requirement: &
|
82
|
+
requirement: &70343611046020 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '2.5'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70343611046020
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: yard
|
93
|
-
requirement: &
|
93
|
+
requirement: &70343611045520 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ~>
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '0.6'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *70343611045520
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: configliere
|
104
|
-
requirement: &
|
104
|
+
requirement: &70343611045020 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ~>
|
@@ -109,18 +109,18 @@ dependencies:
|
|
109
109
|
version: 0.4.8
|
110
110
|
type: :development
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *70343611045020
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: cluster_chef-knife
|
115
|
-
requirement: &
|
115
|
+
requirement: &70343611044520 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - =
|
119
119
|
- !ruby/object:Gem::Version
|
120
|
-
version: 3.0.
|
120
|
+
version: 3.0.9
|
121
121
|
type: :runtime
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *70343611044520
|
124
124
|
description: cluster_chef allows you to orchestrate not just systems but clusters
|
125
125
|
of machines. It includes a powerful layer on top of knife and a collection of cloud
|
126
126
|
cookbooks.
|
@@ -191,7 +191,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
191
191
|
version: '0'
|
192
192
|
segments:
|
193
193
|
- 0
|
194
|
-
hash: -
|
194
|
+
hash: -900538870253244074
|
195
195
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
196
196
|
none: false
|
197
197
|
requirements:
|