Sha256: 6cc81e12b077e9b79839a117886cb93aaa35484eb3af13918cb839760f74a497

Contents?: true

Size: 1.35 KB

Versions: 9

Compression:

Stored size: 1.35 KB

Contents

module Actions
  module Katello
    module CdnConfiguration
      class Update < Actions::EntryAction
        def plan(cdn_configuration, options)
          cdn_configuration.update!(options)

          if cdn_configuration.network_sync?
            resource = ::Katello::Resources::CDN::CdnResource.create(cdn_configuration: cdn_configuration)
            resource.validate!
            keypair = resource.debug_certificate
            cdn_configuration.ssl_cert = OpenSSL::X509::Certificate.new(keypair)
            cdn_configuration.ssl_key = OpenSSL::PKey::RSA.new(keypair)

            cdn_configuration.save!
          end

          org = cdn_configuration.organization
          roots = ::Katello::RootRepository.redhat.in_organization(org)
          roots.each do |root|
            full_path = if cdn_configuration.redhat_cdn?
                          root.product.repo_url(root.library_instance.generate_content_path)
                        elsif cdn_configuration.network_sync?
                          resource.repository_url(content_label: root.content.label, arch: root.arch, major: root.major, minor: root.minor)
                        end
            plan_action(::Actions::Katello::Repository::Update, root, url: full_path)
          end
        end

        def humanized_name
          _("Update CDN Configuration")
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
katello-4.6.2.1 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.6.2 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.6.1 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.5.1 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.6.0 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.6.0.rc2 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.6.0.rc1 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.5.0 app/lib/actions/katello/cdn_configuration/update.rb
katello-4.5.0.rc2 app/lib/actions/katello/cdn_configuration/update.rb