Sha256: 15e81546302620d627066c1b49bc0eef5681c749504990a2b25bc688c4a8e709
Contents?: true
Size: 1 KB
Versions: 92
Compression:
Stored size: 1 KB
Contents
module ForemanOpenscap class MessageCleaner def clean ForemanOpenscap::Policy.unscoped.all.find_in_batches do |batch| batch.each do |policy| process_policy policy end end end private def process_policy(policy) reports_of_policy = ForemanOpenscap::ArfReport.unscoped .of_policy(policy) .order("#{ForemanOpenscap::ArfReport.table_name}.created_at DESC") latest = reports_of_policy.first reports_of_policy.each do |report| next if report == latest report.logs.each do |log| latest_log = latest.logs.find_by(:source_id => log.source_id) next unless latest_log next if log == latest_log latest_message = latest_log.message msg = log.message log.update_attribute('message_id', latest_message.id) msg.destroy! if msg.logs.empty? end end end end end
Version data entries
92 entries across 92 versions & 1 rubygems