190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
|
# File 'lib/gaptool-client.rb', line 190
def execute
if !instance.nil?
nodes = [$api.getonenode(instance)]
else
nodes = $api.getenvroles(role, environment)
end
nodes.peach do |node|
json = {
'this_server' => "#{role}-#{environment}-#{node['instance']}",
'role' => role,
'environment' => environment,
'app_user' => node['appuser'],
'run_list' => [ "recipe[main]" ],
'hostname' => node['hostname'],
'instance' => node['instance'],
'zone' => node['zone'],
'itype' => node['itype'],
'apps' => eval(node['apps'])
}.to_json
commands = [
"cd ~admin/ops; git pull",
"echo '#{json}' > ~admin/solo.json",
"sudo chef-solo -c ~admin/ops/cookbooks/solo.rb -j ~admin/solo.json"
]
sshcmd(node, commands)
end
end
|