Class: HammerCLIForemanRemoteExecution::JobInvocation::InfoCommand

Inherits:
HammerCLIForeman::InfoCommand
  • Object
show all
Extended by:
WithoutNameOption
Includes:
BaseOutput
Defined in:
lib/hammer_cli_foreman_remote_execution/job_invocation.rb

Instance Method Summary collapse

Methods included from WithoutNameOption

create_option_builder

Methods included from BaseOutput

included

Instance Method Details

#adapterObject



57
58
59
60
61
62
63
# File 'lib/hammer_cli_foreman_remote_execution/job_invocation.rb', line 57

def adapter
  if option_id
    :yaml
  else
    :base
  end
end

#extend_data(invocation) ⇒ Object



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/hammer_cli_foreman_remote_execution/job_invocation.rb', line 65

def extend_data(invocation)
  if option_show_inputs?
    invocation['template_invocations']&.each do |template|
      input_values = template['template_invocation_input_values']
      values_for_host = {}
      input_values&.each do |input_value|
        values_for_host[input_value['template_input_name']] = input_value['value']
      end
      hosts = invocation.dig('targeting', 'hosts')
      host_index = hosts&.index { |h| h['id'] == template['host_id'] }
      invocation['targeting']['hosts'][host_index][:inputs] = values_for_host if host_index
    end
  end
  JobInvocation.extend_data(invocation)
end

#request_paramsObject



86
87
88
89
90
# File 'lib/hammer_cli_foreman_remote_execution/job_invocation.rb', line 86

def request_params
  params = super
  params[:host_status] = true if option_show_host_status?
  params
end