Sha256: 3437d229e28bfa080a90474519409d3ac10bf854684ab64dddf6f3be9ce971ae

Contents?: true

Size: 1.25 KB

Versions: 20

Compression:

Stored size: 1.25 KB

Contents

module Actions
  module Katello
    module Applicability
      module Hosts
        class BulkGenerate < Actions::EntryAction
          input_format do
            param :host_ids, Array
          end

          def run
            input[:host_ids].each do |host_id|
              content_facet = ::Katello::Host::ContentFacet.find_by_host_id(host_id)
              if content_facet.present?
                content_facet.calculate_and_import_applicability
              else
                Rails.logger.warn(_("Content Facet for host with id %s is non-existent. Skipping applicability calculation.") % host_id)
              end
            end
          end

          def queue
            ::Katello::HOST_TASKS_QUEUE
          end

          def resource_locks
            :link
          end

          def hostname(host_id)
            content_facet = ::Katello::Host::ContentFacet.find_by_host_id(host_id)
            content_facet&.host&.name
          end

          def humanized_name
            if input[:host_ids]&.length == 1
              _("Bulk generate applicability for host %s" % hostname(input[:host_ids].first))
            else
              _("Bulk generate applicability for hosts")
            end
          end
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
katello-4.4.2.2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.2.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.5.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.5.0 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.5.0.rc2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.5.0.rc1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.0.2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.0.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.0 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.0.rc2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.4.0.rc1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0.rc4 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0.rc3 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0.rc2.1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0.rc2 app/lib/actions/katello/applicability/hosts/bulk_generate.rb
katello-4.3.0.rc1 app/lib/actions/katello/applicability/hosts/bulk_generate.rb