Sha256: dea15da91e5f2ce8516b616c76d6ff201e2c2f6f434d02a5abb495acddab28b6

Contents?: true

Size: 1.61 KB

Versions: 10

Compression:

Stored size: 1.61 KB

Contents

module Katello
  module Concerns
    module Api::V2::RegistrationControllerExtensions
      extend ActiveSupport::Concern

      def prepare_host
        if params['uuid']
          @host = Katello::Host::SubscriptionFacet.find_by(uuid: params['uuid'])&.host
          if @host.nil?
            msg = _("Host was not found by the subscription UUID: '%s', this can happen if the host is registered already, but not to this instance") % params['uuid']
            fail ActiveRecord::RecordNotFound, msg
          end
          @host.assign_attributes(host_params('host'))
          @host.owner = User.current
          @host.save!
        else
          super
        end
      end

      def host_setup_extension
        if params['host']['lifecycle_environment_id']
          @host.content_facet.assign_single_environment(content_view_id: @host&.content_views&.first&.id, lifecycle_environment_id: params['host']['lifecycle_environment_id'])
          @host.update_candlepin_associations
        end

        super
      end

      def context_urls
        super.merge(rhsm_url: smart_proxy.rhsm_url, pulp_content_url: smart_proxy.pulp_content_url)
      end

      private

      def smart_proxy
        @smart_proxy ||= begin
          proxy = params[:url] ? find_smart_proxy : SmartProxy.pulp_primary

          fail Foreman::Exception, _('Smart proxy content source not found!') unless proxy
          fail Foreman::Exception, _('Pulp 3 is not enabled on Smart proxy!') unless proxy.pulp3_enabled?

          proxy
        end
      end

      def find_smart_proxy
        auth_smart_proxy
        @detected_proxy
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
katello-4.14.0.rc1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.13.1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.13.0 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.12.1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.13.0.rc1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.12.0 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.12.0.rc3 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.12.0.rc2 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.12.0.rc1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb
katello-4.11.1 app/controllers/katello/concerns/api/v2/registration_controller_extensions.rb