alpha_omega 0.0.51 → 0.0.52
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/lib/alpha_omega/utils.rb +38 -16
- data/lib/alpha_omega/version.rb +1 -1
- metadata +18 -20
data/lib/alpha_omega/utils.rb
CHANGED
@@ -27,19 +27,44 @@ module AlphaOmega
|
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
30
|
-
def self.
|
30
|
+
def self.what_pods (node_home)
|
31
|
+
pods = {
|
32
|
+
"default" => {
|
33
|
+
"nodes_spec" => "#{node_home}/nodes/*.json",
|
34
|
+
"node_suffix" => ""
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
yield "default", pods["default"]
|
39
|
+
|
40
|
+
this_host = Socket.gethostname.chomp.split(".")[0]
|
41
|
+
this_node = JSON.load(File.read("#{node_home}/nodes/#{this_host}.json"))
|
42
|
+
(this_node["pods"] || []).each do |pod_name|
|
43
|
+
pods[pod_name] = {
|
44
|
+
"nodes_spec" => "#{node_home}/pods/#{pod_name}/*.json",
|
45
|
+
"node_suffix" => ".#{pod_name}"
|
46
|
+
}
|
47
|
+
|
48
|
+
yield pod_name, pods[pod_name]
|
49
|
+
end
|
50
|
+
|
51
|
+
pods
|
52
|
+
end
|
53
|
+
|
54
|
+
def self.what_hosts (pod)
|
31
55
|
# load all the nodes and define cap tasks
|
32
56
|
nodes = {}
|
33
57
|
|
34
|
-
Dir[
|
35
|
-
|
58
|
+
Dir[pod["node_spec"]].each do |fname|
|
59
|
+
node_name = File.basename(fname, ".json")
|
36
60
|
|
37
61
|
node = JSON.parse(IO.read(fname))
|
38
|
-
node[
|
62
|
+
node["node_name"] = node_name
|
63
|
+
node["pod_context"] = pod
|
39
64
|
|
40
|
-
nodes[
|
65
|
+
nodes[node_name] = node
|
41
66
|
|
42
|
-
yield
|
67
|
+
yield node_name, "#{node_name}#{pod["node_suffix"]}", node unless node["virtual"]
|
43
68
|
end
|
44
69
|
|
45
70
|
nodes
|
@@ -50,19 +75,16 @@ module AlphaOmega
|
|
50
75
|
# generalize groups
|
51
76
|
cap_groups = {}
|
52
77
|
|
53
|
-
nodes.each do |
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
cap_groups[g][nm_node] = node
|
59
|
-
end
|
60
|
-
end
|
78
|
+
nodes.each do |node_name, node|
|
79
|
+
remote_name = "#{node_name}#{node["pod_context"]["node_suffix"]}"
|
80
|
+
node["cap_group"].each do |g|
|
81
|
+
cap_groups[g] ||= {}
|
82
|
+
cap_groups[g][remote_name] = node
|
61
83
|
end
|
62
84
|
end
|
63
85
|
|
64
|
-
cap_groups.each do |
|
65
|
-
yield
|
86
|
+
cap_groups.each do |group_name, nodes|
|
87
|
+
yield group_name, nodes
|
66
88
|
end
|
67
89
|
|
68
90
|
cap_groups
|
data/lib/alpha_omega/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alpha_omega
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 119
|
5
|
+
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 52
|
10
|
+
version: 0.0.52
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- David Nghiem
|
@@ -16,8 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-08-31 00:00:00
|
20
|
-
default_executable:
|
19
|
+
date: 2011-08-31 00:00:00 Z
|
21
20
|
dependencies:
|
22
21
|
- !ruby/object:Gem::Dependency
|
23
22
|
name: grit
|
@@ -118,28 +117,27 @@ files:
|
|
118
117
|
- README.mkd
|
119
118
|
- Procfile.rb
|
120
119
|
- libexec/compare
|
121
|
-
- libexec/deploy
|
122
|
-
- libexec/major
|
123
|
-
- libexec/patch
|
124
120
|
- libexec/rollback
|
125
121
|
- libexec/shell
|
122
|
+
- libexec/major
|
123
|
+
- libexec/patch
|
124
|
+
- libexec/deploy
|
126
125
|
- libexec/stage
|
127
|
-
- lib/alpha_omega/
|
128
|
-
- lib/alpha_omega/deploy
|
126
|
+
- lib/alpha_omega/version.rb
|
127
|
+
- lib/alpha_omega/deploy.rb
|
128
|
+
- lib/alpha_omega/utils.rb
|
129
129
|
- lib/alpha_omega/deploy/remote_dependency.rb
|
130
|
-
- lib/alpha_omega/deploy/
|
131
|
-
- lib/alpha_omega/deploy/
|
130
|
+
- lib/alpha_omega/deploy/strategy.rb
|
131
|
+
- lib/alpha_omega/deploy/dependencies.rb
|
132
132
|
- lib/alpha_omega/deploy/scm.rb
|
133
|
+
- lib/alpha_omega/deploy/strategy/remote.rb
|
133
134
|
- lib/alpha_omega/deploy/strategy/base.rb
|
134
135
|
- lib/alpha_omega/deploy/strategy/checkout.rb
|
135
|
-
- lib/alpha_omega/deploy/strategy/remote.rb
|
136
|
-
- lib/alpha_omega/deploy/strategy.rb
|
137
136
|
- lib/alpha_omega/deploy/templates/maintenance.rhtml
|
138
|
-
- lib/alpha_omega/deploy.rb
|
139
|
-
- lib/alpha_omega/
|
140
|
-
- lib/alpha_omega/
|
137
|
+
- lib/alpha_omega/deploy/local_dependency.rb
|
138
|
+
- lib/alpha_omega/deploy/scm/git.rb
|
139
|
+
- lib/alpha_omega/deploy/scm/base.rb
|
141
140
|
- bin/deploy
|
142
|
-
has_rdoc: true
|
143
141
|
homepage: https://github.com/HeSYINUvSBZfxqA/alpha_omega
|
144
142
|
licenses: []
|
145
143
|
|
@@ -169,7 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
169
167
|
requirements: []
|
170
168
|
|
171
169
|
rubyforge_project:
|
172
|
-
rubygems_version: 1.
|
170
|
+
rubygems_version: 1.8.10
|
173
171
|
signing_key:
|
174
172
|
specification_version: 3
|
175
173
|
summary: alpha_omega capistrano recipes
|