Merge branch 'create-merge-pipelines-ce' into 'master'
Backport: Use merge request MERGE ref for attached merge request pipelines See merge request gitlab-org/gitlab-ce!26702
This commit is contained in:
commit
7aa26dee60
3 changed files with 11 additions and 33 deletions
|
@ -55,15 +55,7 @@ module MergeRequests
|
|||
end
|
||||
|
||||
def create_pipeline_for(merge_request, user)
|
||||
return unless Feature.enabled?(:ci_merge_request_pipeline,
|
||||
merge_request.source_project,
|
||||
default_enabled: true)
|
||||
|
||||
##
|
||||
# UpdateMergeRequestsWorker could be retried by an exception.
|
||||
# MR pipelines should not be recreated in such case.
|
||||
return if merge_request.merge_request_pipeline_exists?
|
||||
return if merge_request.has_no_commits?
|
||||
return unless can_create_pipeline_for?(merge_request)
|
||||
|
||||
create_detached_merge_request_pipeline(merge_request, user)
|
||||
end
|
||||
|
@ -80,6 +72,16 @@ module MergeRequests
|
|||
end
|
||||
end
|
||||
|
||||
def can_create_pipeline_for?(merge_request)
|
||||
##
|
||||
# UpdateMergeRequestsWorker could be retried by an exception.
|
||||
# pipelines for merge request should not be recreated in such case.
|
||||
return false if merge_request.merge_request_pipeline_exists?
|
||||
return false if merge_request.has_no_commits?
|
||||
|
||||
true
|
||||
end
|
||||
|
||||
def can_use_merge_request_ref?(merge_request)
|
||||
Feature.enabled?(:ci_use_merge_request_ref, project, default_enabled: true) &&
|
||||
!merge_request.for_fork?
|
||||
|
|
|
@ -263,19 +263,6 @@ describe MergeRequests::CreateService do
|
|||
expect(merge_request.actual_head_pipeline).to be_merge_request_event
|
||||
end
|
||||
end
|
||||
|
||||
context "when the 'ci_merge_request_pipeline' feature flag is disabled" do
|
||||
before do
|
||||
stub_feature_flags(ci_merge_request_pipeline: false)
|
||||
end
|
||||
|
||||
it 'does not create a detached merge request pipeline' do
|
||||
expect(merge_request).to be_persisted
|
||||
|
||||
merge_request.reload
|
||||
expect(merge_request.merge_request_pipelines.count).to eq(0)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "when .gitlab-ci.yml does not have merge_requests keywords" do
|
||||
|
|
|
@ -230,17 +230,6 @@ describe MergeRequests::RefreshService do
|
|||
end.not_to change { @merge_request.merge_request_pipelines.count }
|
||||
end
|
||||
end
|
||||
|
||||
context "when the 'ci_merge_request_pipeline' feature flag is disabled" do
|
||||
before do
|
||||
stub_feature_flags(ci_merge_request_pipeline: false)
|
||||
end
|
||||
|
||||
it 'does not create a detached merge request pipeline' do
|
||||
expect { subject }
|
||||
.not_to change { @merge_request.merge_request_pipelines.count }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "when .gitlab-ci.yml does not have merge_requests keywords" do
|
||||
|
|
Loading…
Reference in a new issue