app/lib/katello/bulk_actions.rb in katello-2.4.5 vs app/lib/katello/bulk_actions.rb in katello-3.0.0.rc1

- old
+ new

@@ -1,60 +1,59 @@ module Katello class BulkActions - attr_accessor :systems + attr_accessor :consumer_ids - def initialize(systems) - self.systems = systems + def initialize(hosts) + @consumer_ids = hosts.map { |host| host.content_facet.try(:uuid) }.compact end def install_packages(packages) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.install_package(packages) end end def uninstall_packages(packages) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.uninstall_package(packages) end end def update_packages(packages = nil) # if no packages are provided, a full system update will be performed (e.g ''yum update' equivalent) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.update_package(packages) end end def install_package_groups(groups) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.install_package_group(groups) end end def update_package_groups(groups) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.install_package_group(groups) end end def uninstall_package_groups(groups) - fail Errors::HostCollectionEmptyException if self.systems.empty? + fail Errors::HostCollectionEmptyException if self.consumer_ids.empty? perform_bulk_action do |consumer_group| consumer_group.uninstall_package_group(groups) end end private def perform_bulk_action - consumer_ids = self.systems.collect { |i| i.uuid } - group = Glue::Pulp::ConsumerGroup.new + group = Katello::Pulp::ConsumerGroup.new group.pulp_id = SecureRandom.uuid group.consumer_ids = consumer_ids group.set_pulp_consumer_group yield(group) ensure