10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'app/lib/actions/katello/applicability/repository/regenerate.rb', line 10
def run
repos = ::Katello::Repository.where(:id => input[:repo_ids]).select do |repo|
repo.last_contents_changed >= repo.last_applicability_regen
end
if repos.any?
host_ids = ::Katello::RootRepository.where(:id => repos.map(&:root_id)).hosts_with_applicability.pluck(:id)
::Katello::Host::ContentFacet.trigger_applicability_generation(host_ids) unless host_ids.empty?
::Katello::Repository.where(:id => repos.map(&:id)).update_all(:last_applicability_regen => DateTime.now)
end
output[:regenerated => repos.map(&:id)]
end
|