Sha256: 43d51c417e97693b664bd1f6e822e6eb8708b423e469216f856032c1ed7c2761

Contents?: true

Size: 800 Bytes

Versions: 7

Compression:

Stored size: 800 Bytes

Contents

# frozen_string_literal: true

module ForemanSalt
  # Represents the variables used in Salt
  class SaltVariable < LookupKey
    belongs_to :salt_module, :inverse_of => :salt_variables
    validates :salt_module_id, :presence => true
    before_validation :cast_default_value, :if => :override?
    scoped_search :on => :key, :aliases => [:name], :complete_value => true
    scoped_search :relation => :salt_module, :on => :name,
                  :complete_value => true, :rename => :salt_module

    def salt?
      true
    end

    def self.humanize_class_name(options = nil)
      if options.present?
        super
      else
        "Salt variable"
      end
    end

    def editable_by_user?
      SaltVariable.authorized(:edit_external_parameters).where(:id => id).exists?
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
foreman_salt-14.0.0 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.2.4 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.2.3 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.2.2 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.2.1 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.2.0 app/models/foreman_salt/salt_variable.rb
foreman_salt-13.1.0 app/models/foreman_salt/salt_variable.rb