Module: ForemanAnsible::AnsibleReportsHelper

Defined in:
app/helpers/foreman_ansible/ansible_reports_helper.rb

Overview

This module takes the config reports stored in Foreman for Ansible and modifies them to be properly presented in views

Instance Method Summary collapse

Instance Method Details

#ansible_module_message(log) ⇒ Object



13
14
15
16
17
18
19
20
21
# File 'app/helpers/foreman_ansible/ansible_reports_helper.rb', line 13

def ansible_module_message(log)
  paragraph_style = 'margin:0px;font-family:Menlo,Monaco,Consolas,monospace'
  safe_join(
    JSON.parse(log.message.value).except('invocation').map do |name, value|
      next if value.blank?
      (:p, "#{name}: #{value}", :style => paragraph_style)
    end
  )
end

#ansible_report?(log) ⇒ Boolean

Returns:

  • (Boolean)


23
24
25
26
27
# File 'app/helpers/foreman_ansible/ansible_reports_helper.rb', line 23

def ansible_report?(log)
  module_name(log).present?
rescue # Failures when parsing the log indicates it's not an Ansible report
  false
end

#module_args(log) ⇒ Object



9
10
11
# File 'app/helpers/foreman_ansible/ansible_reports_helper.rb', line 9

def module_args(log)
  JSON.parse(log.source.value)['module_args']
end

#module_name(log) ⇒ Object



5
6
7
# File 'app/helpers/foreman_ansible/ansible_reports_helper.rb', line 5

def module_name(log)
  JSON.parse(log.source.value)['module_name']
end