app/lib/actions/katello/orphan_cleanup/remove_orphans.rb in katello-3.15.0.1 vs app/lib/actions/katello/orphan_cleanup/remove_orphans.rb in katello-3.15.1
- old
+ new
@@ -11,9 +11,22 @@
if proxy.pulp3_enabled?
plan_action(
Actions::Pulp3::Orchestration::OrphanCleanup::RemoveOrphans,
proxy)
end
+ plan_self
+ end
+ end
+
+ def run
+ models = []
+ ::Katello::RepositoryTypeManager.repository_types.each_value do |repo_type|
+ indexable_types = repo_type.content_types_to_index
+ models += indexable_types&.map(&:model_class)
+ models.select! { |model| model.many_repository_associations }
+ end
+ models.each do |model|
+ model.joins("left join katello_#{model.repository_association} on #{model.table_name}.id = katello_#{model.repository_association}.#{model.unit_id_field}").where("katello_#{model.repository_association}.#{model.unit_id_field} IS NULL").destroy_all
end
end
end
end
end