Sha256: ec236ee6cf0bd93fed7b804a0e5fdee61752f2639cb15ea63b20b88b508db4f1

Contents?: true

Size: 1.04 KB

Versions: 9

Compression:

Stored size: 1.04 KB

Contents

module Katello
  module Services
    module PuppetClassImporterExtensions
      extend ActiveSupport::Concern

      included do
        def update_environment
          change_types = %w(new obsolete updated)
          changed  = self.changes

          change_types.each do |kind|
            changed[kind].slice!(@environment) unless changed[kind].empty?
          end

          #prevent the puppet environment from being deleted, by removing special '_destroy_' String
          if changed['obsolete'][@environment]
            changed['obsolete'][@environment] =
              changed['obsolete'][@environment].select { |klass| klass != '_destroy_' }
          end

          # PuppetClassImporter expects [kind][env] to be in json format
          change_types.each do |kind|
            unless (envs = changed[kind]).empty?
              envs.keys.sort.each do |env|
                changed[kind][env] = changed[kind][env].to_json
              end
            end
          end

          self.obsolete_and_new(changed)
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
katello-3.0.2 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.1 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc7 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc5 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc4 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc3 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc2 app/services/katello/puppet_class_importer_extensions.rb
katello-3.0.0.rc1 app/services/katello/puppet_class_importer_extensions.rb