class HammerCLIForemanRemoteExecution::JobInvocation::OutputCommand
Public Instance Methods
execute()
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 68 def execute data = get_output if data['delayed'] puts _('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) return HammerCLI::EX_OK end
print_data(output)
click to toggle source
# File lib/hammer_cli_foreman_remote_execution/job_invocation.rb, line 57 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 95 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 87 def output_loop(data, since = nil) while data['refresh'] && !option_async? do sleep 1 data = get_output(since) since = print_data(data) end end