Sha256: f0ffd2e36afeade7a85e726d3a5ec8a8349b6d5f95ca66213b326aa78be479a5

Contents?: true

Size: 1.77 KB

Versions: 20

Compression:

Stored size: 1.77 KB

Contents

module Actions
  module Pulp3
    module ContentViewVersion
      class Export < Pulp3::AbstractAsyncTask
        input_format do
          param :content_view_version_id, Integer
          param :from_content_view_version_id, Integer
          param :smart_proxy_id, Integer
          param :exporter_data, Hash
          param :format, String
          param :chunk_size, Integer
          param :repository_id, Integer
        end

        def invoke_external_task
          repository = ::Katello::Repository.find(input[:repository_id]) unless input[:repository_id].blank?
          cvv = ::Katello::ContentViewVersion.find(input[:content_view_version_id])
          from_cvv = ::Katello::ContentViewVersion.find(input[:from_content_view_version_id]) unless input[:from_content_view_version_id].blank?
          ::Katello::Pulp3::ContentViewVersion::Export.create(smart_proxy: smart_proxy,
                                                   content_view_version: cvv,
                                                   from_content_view_version: from_cvv,
                                                   format: input[:format],
                                                   repository: repository)
                                                   .create_export(input[:exporter_data],
                                                                        chunk_size: input[:chunk_size])
        end

        def rescue_external_task(error)
          if error.is_a?(::Katello::Errors::Pulp3Error) && error.message.match?(/Remote artifacts cannot be exported/)
            fail ::Katello::Errors::Pulp3ExportError, "Failed to export: One or more repositories needs to be synced (with Immediate download policy.)"
          else
            super
          end
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
katello-4.15.0.rc2 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.15.0.rc1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.0 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.0.rc3 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.0.rc2 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.0.rc1.1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.14.0.rc1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.13.1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.13.0 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.12.1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.13.0.rc1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.12.0 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.12.0.rc3 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.12.0.rc2 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.12.0.rc1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.11.1 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.11.0 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.11.0.rc2 app/lib/actions/pulp3/content_view_version/export.rb
katello-4.11.0.rc1 app/lib/actions/pulp3/content_view_version/export.rb