Sha256: 680c2e96df3d763b11b64640fb1a6d5f346de5347951499bcacb916454f07df8

Contents?: true

Size: 1.03 KB

Versions: 12

Compression:

Stored size: 1.03 KB

Contents

module Actions
  module Pulp3
    module CapsuleContent
      class Sync < Pulp3::AbstractAsyncTask
        def plan(repository, smart_proxy, options = {})
          sequence do
            plan_self(:repository_id => repository.id, :smart_proxy_id => smart_proxy.id, :options => options)
            plan_action(GenerateMetadata, repository, smart_proxy, options)
          end
        end

        def invoke_external_task
          repo = ::Katello::Repository.find(input[:repository_id])
          sync_options = {}
          sync_options[:optimize] = false if sync_options[:skip_metadata_check]
          output[:pulp_tasks] = repo.backend_service(smart_proxy).with_mirror_adapter.sync(sync_options)
        end

        def rescue_strategy_for_self
          # There are various reasons the syncing fails, not all of them are
          # fatal: when fail on syncing, we continue with the task ending up
          # in the warning state, but not locking further syncs
          Dynflow::Action::Rescue::Skip
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
katello-3.17.3 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.2 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.1 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.16.2 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.0 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.18.0.rc1 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.0.rc2.2 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.0.rc2.1 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.16.1.2 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.16.1.1 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.17.0.rc2 app/lib/actions/pulp3/capsule_content/sync.rb
katello-3.16.1 app/lib/actions/pulp3/capsule_content/sync.rb