alpha_omega 0.0.70 → 0.0.71

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,6 @@
1
1
  require 'capistrano'
2
2
  require 'yaml'
3
+ require 'deep_merge'
3
4
 
4
5
  module AlphaOmega
5
6
 
@@ -8,6 +9,9 @@ module AlphaOmega
8
9
  end
9
10
 
10
11
  def self.node_defaults(node, pods_config, opsdb, env_pod, this_pod, node_name)
12
+ env_pod = this_pod if env_pod == "default" # TODO get rid of default
13
+ node_name = node_name.split(".").first
14
+
11
15
  node["node_name"] = node_name
12
16
 
13
17
  # defaults
@@ -32,7 +36,7 @@ module AlphaOmega
32
36
  node["p_name"] = "#{node["node_name"]}.#{node["env_pod"]}"
33
37
 
34
38
  # check if managed
35
- if "default" != env_pod # TODO get rid of default, use this_pod
39
+ if this_pod != env_pod # TODO get rid of default, use this_pod
36
40
  node["q_name"] = "#{node["node_name"]}.#{node["env_pod"]}"
37
41
  node["managed"] = true
38
42
  else
@@ -50,6 +54,9 @@ module AlphaOmega
50
54
 
51
55
  node["run_list"].concat pods_config[env_pod]["run_list"] if pods_config[env_pod].key? "run_list"
52
56
 
57
+ node.delete "pod_context"
58
+ node.delete "node"
59
+
53
60
  node
54
61
  end
55
62
 
@@ -77,11 +84,11 @@ module AlphaOmega
77
84
  end
78
85
 
79
86
  config.task "#{task_name}.#{pod_name}.yaml" do
80
- n = self.node_defaults(node, pods_config. opsdb, pod_name, this_pod, task_name)
87
+ n = AlphaOmega.node_defaults(node, pods_config, opsdb, pod_name, this_pod, remote_name)
81
88
  StringIO.new({ remote_name => n }.to_yaml).lines.each {|l| puts "#{AlphaOmega.magic_prefix} #{l}" }
82
89
  end
83
90
 
84
- [ "", ".echo", ".yaml" ].eeach do |tsuffix|
91
+ [ "", ".echo", ".yaml" ].each do |tsuffix|
85
92
  config.task "#{task_name}#{tsuffix}" do
86
93
  after "#{task_name}#{tsuffix}", "#{task_name}.#{current_pod}#{tsuffix}"
87
94
  end
@@ -136,8 +143,8 @@ module AlphaOmega
136
143
  end
137
144
 
138
145
  set :last_pod, pod_name
139
- nodes.keys.sort.each do |remote_name|
140
- n = self.node_defaults(node, pods_config. opsdb, pod_name, this_pod, task_name)
146
+ nodes.sort.each do |remote_name, node|
147
+ n = AlphaOmega.node_defaults(node, pods_config, opsdb, pod_name, this_pod, remote_name)
141
148
  StringIO.new({ remote_name => n }.to_yaml).lines.each {|l| puts "#{AlphaOmega.magic_prefix} #{l}" }
142
149
  end
143
150
  end
@@ -200,10 +207,11 @@ module AlphaOmega
200
207
  "nodes_spec" => "#{node_home}/pods/#{this_pod}/*.yaml",
201
208
  "node_suffix" => ""
202
209
  }
203
- yield config, "default", pods[this_pod], pods_config. opsdb, this_pod # TODO get rid of default and use this_pod
210
+ yield config, "default", pods["default"], pods_config, opsdb, this_pod # TODO get rid of default and use this_pod
204
211
 
205
212
  this_host = Socket.gethostname.chomp.split(".")[0]
206
- this_node = YAML.load(File.read("#{node_home}/pods/#{this_pod}/#{this_host}.yaml"))
213
+ n = YAML.load(File.read("#{node_home}/pods/#{this_pod}/#{this_host}.yaml"))
214
+ this_node = AlphaOmega.node_defaults(n, pods_config, opsdb, this_pod, this_pod, this_host)
207
215
 
208
216
  (this_node["pods"] || []).each do |pod_name|
209
217
  pods[pod_name] = {
@@ -1,3 +1,3 @@
1
1
  module AlphaOmega
2
- Version = "0.0.70"
2
+ Version = "0.0.71"
3
3
  end
data/libexec/dna CHANGED
@@ -3,5 +3,5 @@
3
3
  export LOCAL_ONLY=true
4
4
 
5
5
  {
6
- cap $(for a in "$@"; do yaml $a.yaml; done)
7
- } 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | sed 's#eea914aaa8dde6fdae29242b1084a2b0415eefaf ##'
6
+ cap $(for a in "$@"; do echo $a.yaml; done)
7
+ } 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | sed 's#eea914aaa8dde6fdae29242b1084a2b0415eefaf ##'
data/libexec/hosts CHANGED
@@ -4,4 +4,4 @@ export LOCAL_ONLY=true
4
4
 
5
5
  {
6
6
  cap $(for a in "$@"; do echo $a.echo; done)
7
- } 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | awk '{print $NF}' | sort -u
7
+ } 2>&1 | grep eea914aaa8dde6fdae29242b1084a2b0415eefaf | awk '{print $NF}' | sort -u
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: 147
4
+ hash: 145
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 70
10
- version: 0.0.70
9
+ - 71
10
+ version: 0.0.71
11
11
  platform: ruby
12
12
  authors:
13
13
  - David Nghiem