31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# File 'lib/sensu-cli/base.rb', line 31
def make_call
opts = {
:path => @api[:path],
:method => @api[:method],
:payload => @api[:payload],
:host => Config.host,
:port => Config.port,
:ssl => Config.ssl || false,
:user => Config.user || nil,
:read_timeout => Config.read_timeout || 15,
:open_timeout => Config.open_timeout || 5,
:password => Config.password || nil,
:proxy_address => Config.proxy_address || nil,
:proxy_port => Config.proxy_port || nil
}
api = Api.new
res = api.request(opts)
msg = api.response(res.code, res.body, @api[:command])
msg = Filter.new(@cli[:fields][:filter]).process(msg) if @cli[:fields][:filter]
endpoint = @api[:command]
if res.code != '200'
SensuCli::die(0)
elsif @cli[:fields][:format] == 'single'
Pretty.single(msg, endpoint)
elsif @cli[:fields][:format] == 'table'
fields = nil || @cli[:fields][:fields]
Pretty.table(msg, endpoint, fields)
elsif @cli[:fields][:format] == 'json'
Pretty.json(msg)
else
Pretty.print(msg, endpoint)
end
Pretty.count(msg) unless @cli[:fields][:format] == 'table' or @cli[:fields][:format] == 'json'
end
|