class Chef::Knife::GoiardiGelList
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/goiardi_gel_list.rb, line 60 def run @rest = Chef::REST.new(Chef::Config[:chef_server_url]) rows = config[:limit] || 15 offset = config[:offset] || 0 start_time, end_time = apply_time_args() list = @rest.get_rest(generate_query(rows, offset, start_time, end_time, config), false, {}) list.map! do |l| l["event"]["object_type"] = format_object_type(l["event"]["object_type"]) li = { :event => { :id => l["event"]["id"], :action => l["event"]["action"], :name => l["event"]["object_name"], :type => l["event"]["object_type"], :time => format_time(l["event"]["time"]) } } if config[:doer] actor_info = JSON.parse(l["event"]["actor_info"]) li[:event][:performed_by] = actor_info["username"] end li end output(list) end
Private Instance Methods
generate_query(rows, offset, start_time, end_time, options)
click to toggle source
# File lib/chef/knife/goiardi_gel_list.rb, line 84 def generate_query(rows, offset, start_time, end_time, options) query = "events?limit=#{rows}&offset=#{offset}" if start_time query += "&from=#{start_time}" end if end_time query += "&until=#{end_time}" end if options[:object_type] query += "&object_type=#{options[:object_type]}" end if options[:object_name] query += "&object_name=#{options[:object_name]}" end if options[:doer] query += "&doer=#{options[:doer]}" end query end