Sha256: 9cca9323e43f50a345af318310dbf00c7a3a124c4ac24b719fc1dbad5a2c1874

Contents?: true

Size: 1.08 KB

Versions: 5

Compression:

Stored size: 1.08 KB

Contents

module Actions
  module Pulp3
    module Repository
      class ReclaimSpace < Pulp3::AbstractAsyncTask
        def plan(repositories, smart_proxy = SmartProxy.pulp_primary)
          repositories = [repositories] if repositories.is_a?(::Katello::Repository)
          if repositories.empty?
            fail _("No repositories selected.")
          end
          repositories = repositories.select { |repo| repo.download_policy == ::Katello::RootRepository::DOWNLOAD_ON_DEMAND }
          if repositories.empty?
            fail _("Only On Demand repositories may have space reclaimed.")
          end
          repository_hrefs = ::Katello::Pulp3::RepositoryReference.default_cv_repository_hrefs(repositories, Organization.current)
          plan_self(repository_hrefs: repository_hrefs, smart_proxy_id: smart_proxy.id)
        end

        def invoke_external_task
          output[:pulp_tasks] = ::Katello::Pulp3::Api::Core.new(SmartProxy.find(input[:smart_proxy_id])).
            repositories_reclaim_space_api.reclaim(repo_hrefs: input[:repository_hrefs])
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
katello-4.3.1 app/lib/actions/pulp3/repository/reclaim_space.rb
katello-4.4.0.rc1 app/lib/actions/pulp3/repository/reclaim_space.rb
katello-4.3.0 app/lib/actions/pulp3/repository/reclaim_space.rb
katello-4.3.0.rc4 app/lib/actions/pulp3/repository/reclaim_space.rb
katello-4.3.0.rc3 app/lib/actions/pulp3/repository/reclaim_space.rb