Class: ForemanAnsible::AnsibleReportScanner

Inherits:
Object
  • Object
show all
Defined in:
app/services/foreman_ansible/ansible_report_scanner.rb

Overview

Scans ConfigReports after import for indicators of an Ansible report and sets the origin of the report to ‘Ansible’

Class Method Summary collapse

Class Method Details

.ansible_report?(logs) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
18
19
20
21
# File 'app/services/foreman_ansible/ansible_report_scanner.rb', line 15

def ansible_report?(logs)
  return false if logs.blank?
  logs.any? do |log|
    log['log'].fetch('messages', {}).
      fetch('message', '') =~ /"_ansible_parsed"/
  end
end

.scan(report, logs) ⇒ Object



8
9
10
11
12
13
# File 'app/services/foreman_ansible/ansible_report_scanner.rb', line 8

def scan(report, logs)
  if (is_ansible = ansible_report?(logs))
    report.origin = 'Ansible'
  end
  is_ansible
end