Class: Chef::Knife::GoiardiGelList

Inherits:
Chef::Knife show all
Includes:
Goiardi::Gel::KnifeHelpers
Defined in:
lib/chef/knife/goiardi_gel_list.rb

Instance Method Summary collapse

Methods included from Goiardi::Gel::KnifeHelpers

#apply_time_args, #convert_to_unix_timestamps, #format_event, #format_object_type, #format_time

Instance Method Details

#runObject



60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# 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