Class: ClusterNameValidator
- Inherits:
-
ActiveModel::EachValidator
- Object
- ActiveModel::EachValidator
- ClusterNameValidator
- Defined in:
- app/validators/cluster_name_validator.rb
Overview
ClusterNameValidator
Custom validator for ClusterName.
Instance Method Summary collapse
Instance Method Details
#validate_each(record, attribute, value) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'app/validators/cluster_name_validator.rb', line 7 def validate_each(record, attribute, value) if record.provided_by_user? if value.blank? record.errors.add(attribute, 'has to be present') elsif record.name_changed? && value.length > 2048 record.errors.add(attribute, 'is too long') end else if record.persisted? && record.name_changed? record.errors.add(attribute, "can not be changed because it's synchronized with provider") end unless value.length >= 1 && value.length <= 63 record.errors.add(attribute, 'syntax is invalid') end unless Gitlab::Regex.kubernetes_namespace_regex.match(value) record.errors.add(attribute, Gitlab::Regex.) end end end |