summaryrefslogtreecommitdiff
path: root/lib/gitlab/ci
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzesiek.bizon@gmail.com>2017-09-18 14:29:43 +0200
committerGrzegorz Bizon <grzesiek.bizon@gmail.com>2017-09-18 14:29:43 +0200
commitd79ad28fcb44c35d77de26d428ae61bc6d71e8ec (patch)
tree0eab721907e46ad6f91b22f719850f32529569f9 /lib/gitlab/ci
parent6681ea9cd8d7001a352c95237d625057b6147f0b (diff)
downloadgitlab-ce-d79ad28fcb44c35d77de26d428ae61bc6d71e8ec.tar.gz
Do not pass project path from YAML processor
Use project full path that can be received from a pipeline object
Diffstat (limited to 'lib/gitlab/ci')
-rw-r--r--lib/gitlab/ci/build/policy/kubernetes.rb2
-rw-r--r--lib/gitlab/ci/build/policy/refs.rb12
-rw-r--r--lib/gitlab/ci/build/policy/specification.rb4
-rw-r--r--lib/gitlab/ci/yaml_processor.rb4
4 files changed, 11 insertions, 11 deletions
diff --git a/lib/gitlab/ci/build/policy/kubernetes.rb b/lib/gitlab/ci/build/policy/kubernetes.rb
index bf3a95e08f0..b20d374288f 100644
--- a/lib/gitlab/ci/build/policy/kubernetes.rb
+++ b/lib/gitlab/ci/build/policy/kubernetes.rb
@@ -9,7 +9,7 @@ module Gitlab
end
end
- def satisfied_by?(pipeline, **_)
+ def satisfied_by?(pipeline)
pipeline.has_kubernetes_active?
end
end
diff --git a/lib/gitlab/ci/build/policy/refs.rb b/lib/gitlab/ci/build/policy/refs.rb
index 76a57f041e3..eadc0948d2f 100644
--- a/lib/gitlab/ci/build/policy/refs.rb
+++ b/lib/gitlab/ci/build/policy/refs.rb
@@ -7,21 +7,21 @@ module Gitlab
@patterns = Array(refs)
end
- def satisfied_by?(pipeline, path: nil)
+ def satisfied_by?(pipeline)
@patterns.any? do |pattern|
- pattern, ref_path = pattern.split('@', 2)
+ pattern, path = pattern.split('@', 2)
- matches_path?(ref_path, path) &&
+ matches_path?(path, pipeline) &&
matches_pattern?(pattern, pipeline)
end
end
private
- def matches_path?(ref_path, expected_path)
- return true unless ref_path
+ def matches_path?(path, pipeline)
+ return true unless path
- expected_path == ref_path
+ pipeline.project_full_path == path
end
def matches_pattern?(pattern, pipeline)
diff --git a/lib/gitlab/ci/build/policy/specification.rb b/lib/gitlab/ci/build/policy/specification.rb
index 9ca3582b9b0..c317291f29d 100644
--- a/lib/gitlab/ci/build/policy/specification.rb
+++ b/lib/gitlab/ci/build/policy/specification.rb
@@ -3,7 +3,7 @@ module Gitlab
module Build
module Policy
##
- # Abstract class that defines an intereface of job policy
+ # Abstract class that defines an interface of job policy
# specification.
#
# Used for job's only/except policy configuration.
@@ -15,7 +15,7 @@ module Gitlab
@spec = spec
end
- def satisfied_by?(pipeline, **metadata)
+ def satisfied_by?(pipeline)
raise NotImplementedError
end
end
diff --git a/lib/gitlab/ci/yaml_processor.rb b/lib/gitlab/ci/yaml_processor.rb
index 3a7a2761db8..da39a28df4c 100644
--- a/lib/gitlab/ci/yaml_processor.rb
+++ b/lib/gitlab/ci/yaml_processor.rb
@@ -63,8 +63,8 @@ module Gitlab
except_specs = Gitlab::Ci::Build::Policy
.fabricate(job.fetch(:except, {}))
- only_specs.all? { |spec| spec.satisfied_by?(pipeline, path: @path) } &&
- except_specs.none? { |spec| spec.satisfied_by?(pipeline, path: @path) }
+ only_specs.all? { |spec| spec.satisfied_by?(pipeline) } &&
+ except_specs.none? { |spec| spec.satisfied_by?(pipeline) }
end
selected_jobs.map { |_, job| build_attributes(job[:name]) }