Class: Actions::ForemanSalt::ReportImport

Inherits:
EntryAction
  • Object
show all
Defined in:
app/lib/actions/foreman_salt/report_import.rb

Instance Method Summary collapse

Instance Method Details

#humanized_nameObject



21
22
23
# File 'app/lib/actions/foreman_salt/report_import.rb', line 21

def humanized_name
  _("Process Highstate Report: #{input[:job_id]}")
end

#plan(job, proxy_id) ⇒ Object



8
9
10
# File 'app/lib/actions/foreman_salt/report_import.rb', line 8

def plan(job, proxy_id)
  plan_self(:job_id => job[:job_id], :report => job[:result], :proxy_id => proxy_id)
end

#resource_locksObject



4
5
6
# File 'app/lib/actions/foreman_salt/report_import.rb', line 4

def resource_locks
  :report_import
end

#runObject



12
13
14
15
16
17
18
19
# File 'app/lib/actions/foreman_salt/report_import.rb', line 12

def run
  ::User.as_anonymous_admin do
    reports = ::ForemanSalt::ReportImporter.import(input[:report], input[:proxy_id])

    output[:state] = { :message => "Imported #{reports.count} new reports" }
    output[:hosts] = reports.map { |report| report.host.name }
  end
end