module Actions module Pulp3 module Repository class RefreshDistribution < Pulp3::AbstractAsyncTask include Helpers::Presenter def plan(repository, smart_proxy, options = {}) smart_proxy = SmartProxy.unscoped.find_by(id: smart_proxy) #support bulk actions sequence do if !repository.unprotected && !options[:assume_content_guard_exists] plan_action(::Actions::Pulp3::ContentGuard::Refresh, smart_proxy) end refresh_options = { :repository_id => repository.id, :smart_proxy_id => smart_proxy.id } action = plan_self(refresh_options) plan_action(SaveDistributionReferences, repository, smart_proxy, action.output) end end def invoke_external_task repo = ::Katello::Repository.find(input[:repository_id]) repo.backend_service(smart_proxy).with_mirror_adapter.refresh_distributions end end end end end