Module: KubeDSL::Validations::ClassMethods

Defined in:
lib/kube-dsl/validations.rb

Instance Method Summary collapse

Instance Method Details

#validates(field_name, options) ⇒ Object



162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
# File 'lib/kube-dsl/validations.rb', line 162

def validates(field_name, options)
  validators[field_name] = options.map do |val, *val_args|
    validator_class = case val
      when :array
        ArrayValidator
      when :presence
        PresenceValidator
      when :field
        FieldValidator
      when :object
        ObjectValidator
      when :kv
        KeyValueValidator
      when :inclusion
        InclusionValidator
      else
        raise "couldn't find a(n) #{val} validator"
    end

    validator_class.new(field_name, *val_args)
  end
end

#validatorsObject



185
186
187
# File 'lib/kube-dsl/validations.rb', line 185

def validators
  @validators ||= {}
end