2016-08-24 12:49:21 +05:30
|
|
|
module Gitlab
|
|
|
|
module Ci
|
|
|
|
class Config
|
2017-08-17 22:00:37 +05:30
|
|
|
module Entry
|
2016-08-24 12:49:21 +05:30
|
|
|
module Validatable
|
|
|
|
extend ActiveSupport::Concern
|
|
|
|
|
|
|
|
class_methods do
|
|
|
|
def validator
|
2017-08-17 22:00:37 +05:30
|
|
|
@validator ||= Class.new(Entry::Validator).tap do |validator|
|
2016-09-13 17:45:13 +05:30
|
|
|
if defined?(@validations)
|
|
|
|
@validations.each { |rules| validator.class_eval(&rules) }
|
|
|
|
end
|
2016-08-24 12:49:21 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def validations(&block)
|
|
|
|
(@validations ||= []).append(block)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|