class HammerCLIForemanRemoteExecution::JobInvocation::OutputCommand
Public Instance Methods
execute()
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 114 def execute data = get_output if data['delayed'] puts format(_('The job is scheduled to start at %{timestamp}'), :timestamp => data['start_at']) return HammerCLI::EX_OK if option_async? end since = print_data(data) output_loop(data, since) HammerCLI::EX_OK end
print_data(output)
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 103 def print_data(output) line_set = output['output'].sort_by { |lines| lines['timestamp'].to_f } since = nil line_set.each do |line| puts line['output'] since = line['timestamp'] end since end
Private Instance Methods
get_output(since = nil)
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 141 def get_output(since = nil) resource.call(action, request_params.merge(:since => since), request_headers, request_options) end
output_loop(data, since = nil)
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 133 def output_loop(data, since = nil) while data['refresh'] && !option_async? sleep 1 data = get_output(since) since = print_data(data) end end