summaryrefslogtreecommitdiff
path: root/lib/gitlab/ci/pipeline/seed
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/ci/pipeline/seed')
-rw-r--r--lib/gitlab/ci/pipeline/seed/build.rb18
-rw-r--r--lib/gitlab/ci/pipeline/seed/stage.rb4
2 files changed, 7 insertions, 15 deletions
diff --git a/lib/gitlab/ci/pipeline/seed/build.rb b/lib/gitlab/ci/pipeline/seed/build.rb
index 7cd7c864448..6980b0b7aff 100644
--- a/lib/gitlab/ci/pipeline/seed/build.rb
+++ b/lib/gitlab/ci/pipeline/seed/build.rb
@@ -11,21 +11,16 @@ module Gitlab
@pipeline = pipeline
@attributes = attributes
- @only = attributes.delete(:only)
- @except = attributes.delete(:except)
- end
-
- def user=(current_user)
- @attributes.merge!(user: current_user)
+ @only = Gitlab::Ci::Build::Policy
+ .fabricate(attributes.delete(:only))
+ @except = Gitlab::Ci::Build::Policy
+ .fabricate(attributes.delete(:except))
end
def included?
strong_memoize(:inclusion) do
- only_specs = Gitlab::Ci::Build::Policy.fabricate(@only)
- except_specs = Gitlab::Ci::Build::Policy.fabricate(@except)
-
- only_specs.all? { |spec| spec.satisfied_by?(@pipeline) } &&
- except_specs.none? { |spec| spec.satisfied_by?(@pipeline) }
+ @only.all? { |spec| spec.satisfied_by?(@pipeline, self) } &&
+ @except.none? { |spec| spec.satisfied_by?(@pipeline, self) }
end
end
@@ -33,6 +28,7 @@ module Gitlab
@attributes.merge(
pipeline: @pipeline,
project: @pipeline.project,
+ user: @pipeline.user,
ref: @pipeline.ref,
tag: @pipeline.tag,
trigger_request: @pipeline.legacy_trigger,
diff --git a/lib/gitlab/ci/pipeline/seed/stage.rb b/lib/gitlab/ci/pipeline/seed/stage.rb
index 1fcbdc1b15a..c101f30d6e8 100644
--- a/lib/gitlab/ci/pipeline/seed/stage.rb
+++ b/lib/gitlab/ci/pipeline/seed/stage.rb
@@ -17,10 +17,6 @@ module Gitlab
end
end
- def user=(current_user)
- @builds.each { |seed| seed.user = current_user }
- end
-
def attributes
{ name: @attributes.fetch(:name),
pipeline: @pipeline,