From 3e16b015b969a4d5d28240e76bffd382b0772f49 Mon Sep 17 00:00:00 2001 From: Grzegorz Bizon Date: Thu, 14 Jul 2016 15:23:52 +0200 Subject: Revert logical validation in CI job stage entry --- lib/ci/gitlab_ci_yaml_processor.rb | 7 +++++++ lib/gitlab/ci/config/node/job.rb | 1 - lib/gitlab/ci/config/node/stage.rb | 16 ---------------- 3 files changed, 7 insertions(+), 17 deletions(-) (limited to 'lib') diff --git a/lib/ci/gitlab_ci_yaml_processor.rb b/lib/ci/gitlab_ci_yaml_processor.rb index 144f9cd7b74..0217a905eac 100644 --- a/lib/ci/gitlab_ci_yaml_processor.rb +++ b/lib/ci/gitlab_ci_yaml_processor.rb @@ -105,6 +105,7 @@ module Ci validate_job_keys!(name, job) validate_job_types!(name, job) + validate_job_stage!(name, job) if job[:stage] validate_job_variables!(name, job) if job[:variables] validate_job_cache!(name, job) if job[:cache] validate_job_artifacts!(name, job) if job[:artifacts] @@ -153,6 +154,12 @@ module Ci end end + def validate_job_stage!(name, job) + unless job[:stage].is_a?(String) && job[:stage].in?(@stages) + raise ValidationError, "#{name} job: stage parameter should be #{@stages.join(", ")}" + end + end + def validate_job_variables!(name, job) unless validate_variables(job[:variables]) raise ValidationError, diff --git a/lib/gitlab/ci/config/node/job.rb b/lib/gitlab/ci/config/node/job.rb index f01a46a8ddc..cca9791fc8e 100644 --- a/lib/gitlab/ci/config/node/job.rb +++ b/lib/gitlab/ci/config/node/job.rb @@ -12,7 +12,6 @@ module Gitlab validates :config, presence: true with_options on: :processed do - validates :global, required: true validates :name, presence: true validates :name, type: Symbol end diff --git a/lib/gitlab/ci/config/node/stage.rb b/lib/gitlab/ci/config/node/stage.rb index 909358ea170..cbc97641f5a 100644 --- a/lib/gitlab/ci/config/node/stage.rb +++ b/lib/gitlab/ci/config/node/stage.rb @@ -10,22 +10,6 @@ module Gitlab validations do validates :config, type: String - - with_options on: :processed do - validates :global, required: true - - validate do - unless known? - errors.add(:config, - 'should be one of defined stages ' \ - "(#{global.stages.join(', ')})") - end - end - end - end - - def known? - @global.stages.include?(@config) end def self.default -- cgit v1.2.1