Sha256: 983eba51e082b9d2c0a4d1ba35f60664eafde7bebd4e1d71575d91718846f00b

Contents?: true

Size: 1.59 KB

Versions: 9

Compression:

Stored size: 1.59 KB

Contents

module Katello
  class ContentViewPuppetModule < Katello::Model
    self.include_root_in_json = false

    belongs_to :content_view, :class_name => "Katello::ContentView", :inverse_of => :content_view_versions

    validates_lengths_from_database
    validates :content_view_id, :presence => true
    validates :name, :uniqueness => { :scope => :content_view_id }, :allow_blank => true
    validates :uuid, :uniqueness => { :scope => :content_view_id }, :allow_blank => true

    validates_with Validators::ContentViewPuppetModuleValidator

    scoped_search :on => :name, :complete_value => true
    scoped_search :on => :author, :complete_value => true
    scoped_search :on => :uuid, :complete_value => true
    scoped_search :on => :name, :in => :content_view, :rename => :content_view_name

    def puppet_module
      PuppetModule.find_by_uuid(self.uuid)
    end

    def computed_version
      if self.uuid
        puppet_module = PuppetModule.where(:uuid => self.uuid).first
      else
        puppet_module = PuppetModule.latest_module(
          self.name,
          self.author,
          self.content_view.puppet_repos
        )
      end

      puppet_module.version
    end

    before_save :set_attributes

    private

    def set_attributes
      return unless SETTINGS[:katello][:use_pulp]
      if self.uuid.present?
        puppet_module = PuppetModule.with_identifiers(self.uuid).first
        fail Errors::NotFound, _("Couldn't find Puppet Module with id '%s'") % self.uuid unless puppet_module

        self.name = puppet_module.name
        self.author = puppet_module.author
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
katello-2.4.5 app/models/katello/content_view_puppet_module.rb
katello-2.4.4 app/models/katello/content_view_puppet_module.rb
katello-2.4.3 app/models/katello/content_view_puppet_module.rb
katello-2.4.2 app/models/katello/content_view_puppet_module.rb
katello-2.4.1 app/models/katello/content_view_puppet_module.rb
katello-2.4.0 app/models/katello/content_view_puppet_module.rb
katello-2.4.0.rc3 app/models/katello/content_view_puppet_module.rb
katello-2.4.0.rc2 app/models/katello/content_view_puppet_module.rb
katello-2.4.0.rc1 app/models/katello/content_view_puppet_module.rb