summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-07-14 15:23:52 +0200
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2016-07-14 15:45:07 +0200
commit3e16b015b969a4d5d28240e76bffd382b0772f49 (patch)
tree720ec13b11b4a55205f4335da0b79b75890243a7 /lib
parentf7c80e9f31944c0001c9bef23d1a8efe33e4adce (diff)
downloadgitlab-ce-3e16b015b969a4d5d28240e76bffd382b0772f49.tar.gz
Revert logical validation in CI job stage entry
Diffstat (limited to 'lib')
-rw-r--r--lib/ci/gitlab_ci_yaml_processor.rb7
-rw-r--r--lib/gitlab/ci/config/node/job.rb1
-rw-r--r--lib/gitlab/ci/config/node/stage.rb16
3 files changed, 7 insertions, 17 deletions
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