summaryrefslogtreecommitdiff
path: root/lib/gitlab/ci/config/node/validatable.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/ci/config/node/validatable.rb')
-rw-r--r--lib/gitlab/ci/config/node/validatable.rb10
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/gitlab/ci/config/node/validatable.rb b/lib/gitlab/ci/config/node/validatable.rb
index f6e2896dfb2..085e6e988d1 100644
--- a/lib/gitlab/ci/config/node/validatable.rb
+++ b/lib/gitlab/ci/config/node/validatable.rb
@@ -7,13 +7,11 @@ module Gitlab
class_methods do
def validator
- validator = Class.new(Node::Validator)
-
- if defined?(@validations)
- @validations.each { |rules| validator.class_eval(&rules) }
+ @validator ||= Class.new(Node::Validator).tap do |validator|
+ if defined?(@validations)
+ @validations.each { |rules| validator.class_eval(&rules) }
+ end
end
-
- validator
end
private