Sha256: 60fd850a797f172b6fdebc6a4d6ed18b3339c874b85692e0733d8f2e5d61df97

Contents?: true

Size: 1.35 KB

Versions: 29

Compression:

Stored size: 1.35 KB

Contents

module Actions
  module Katello
    module ActivationKey
      class Update < Actions::EntryAction
        def plan(activation_key, activation_key_params)
          # need to check if candlepin attributes have changed prior to updating attributes
          update_candlepin = update_candlepin?(activation_key, activation_key_params)
          action_subject activation_key
          activation_key.update_attributes!(activation_key_params)
          if update_candlepin
            plan_action(::Actions::Candlepin::ActivationKey::Update,
                        cp_id: activation_key.cp_id,
                        release_version: activation_key.release_version,
                        service_level: activation_key.service_level,
                        auto_attach: activation_key.auto_attach)
          end
        end

        def update_candlepin?(activation_key, activation_key_params)
          cp_changed?(activation_key.auto_attach, activation_key_params[:auto_attach]) ||
          cp_changed?(activation_key.service_level, activation_key_params[:service_level]) ||
          cp_changed?(activation_key.release_version, activation_key_params[:release_version])
        end

        def cp_changed?(activation_key, activation_key_params)
          !activation_key_params.nil? && activation_key.to_s != activation_key_params.to_s
        end
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
katello-3.2.1.1 app/lib/actions/katello/activation_key/update.rb
katello-3.2.1 app/lib/actions/katello/activation_key/update.rb
katello-3.2.0 app/lib/actions/katello/activation_key/update.rb
katello-3.2.0.rc3 app/lib/actions/katello/activation_key/update.rb
katello-3.2.0.rc2 app/lib/actions/katello/activation_key/update.rb
katello-3.2.0.rc1.1 app/lib/actions/katello/activation_key/update.rb
katello-3.2.0.rc1 app/lib/actions/katello/activation_key/update.rb
katello-3.1.0.1 app/lib/actions/katello/activation_key/update.rb
katello-3.1.0 app/lib/actions/katello/activation_key/update.rb
katello-3.1.0.rc2.1 app/lib/actions/katello/activation_key/update.rb
katello-3.0.2 app/lib/actions/katello/activation_key/update.rb
katello-2.4.5 app/lib/actions/katello/activation_key/update.rb
katello-3.1.0.rc1 app/lib/actions/katello/activation_key/update.rb
katello-3.0.1 app/lib/actions/katello/activation_key/update.rb
katello-2.4.4 app/lib/actions/katello/activation_key/update.rb
katello-3.0.0 app/lib/actions/katello/activation_key/update.rb
katello-2.4.3 app/lib/actions/katello/activation_key/update.rb
katello-3.0.0.rc7 app/lib/actions/katello/activation_key/update.rb
katello-3.0.0.rc5 app/lib/actions/katello/activation_key/update.rb
katello-2.4.2 app/lib/actions/katello/activation_key/update.rb