Skip to content
Snippets Groups Projects
Commit c120bda2 authored by Shinya Maeda's avatar Shinya Maeda
Browse files

Remove fix_related_environments_for_merge_requests feature flag

This commit removes the
fix_related_environments_for_merge_requests feature flag.

Changelog: other
parent e2add1e9
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -1438,30 +1438,8 @@ def mergeable_ci_state?
actual_head_pipeline.success?
end
 
##
# This method is for looking for active environments which created via pipelines for merge requests.
# Since deployments run on a merge request ref (e.g. `refs/merge-requests/:iid/head`),
# we cannot look up environments with source branch name.
def legacy_environments
return Environment.none unless actual_head_pipeline&.merge_request?
build_for_actual_head_pipeline = Ci::Build.latest.where(pipeline: actual_head_pipeline)
environments = build_for_actual_head_pipeline.joins(:metadata)
.where.not('ci_builds_metadata.expanded_environment_name' => nil)
.distinct('ci_builds_metadata.expanded_environment_name')
.limit(100)
.pluck(:expanded_environment_name)
Environment.where(project: project, name: environments)
end
def environments_in_head_pipeline(deployment_status: nil)
if ::Feature.enabled?(:fix_related_environments_for_merge_requests, target_project)
actual_head_pipeline&.environments_in_self_and_descendants(deployment_status: deployment_status) || Environment.none
else
legacy_environments
end
actual_head_pipeline&.environments_in_self_and_descendants(deployment_status: deployment_status) || Environment.none
end
 
def fetch_ref!
Loading
Loading
Loading
Loading
@@ -19,9 +19,7 @@ def execute_for_branch(branch_name)
end
 
def execute_for_merge_request_pipeline(merge_request)
if ::Feature.enabled?(:fix_related_environments_for_merge_requests, merge_request.target_project)
return unless merge_request.actual_head_pipeline&.merge_request?
end
return unless merge_request.actual_head_pipeline&.merge_request?
 
merge_request.environments_in_head_pipeline(deployment_status: :success).each do |environment|
execute(environment)
Loading
Loading
---
name: fix_related_environments_for_merge_requests
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/83382
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/356642
milestone: '14.10'
type: development
group: group::release
default_enabled: true
Loading
Loading
@@ -3540,50 +3540,6 @@ def set_compare(merge_request)
end
end
 
describe "#legacy_environments" do
subject { merge_request.legacy_environments }
let(:merge_request) { create(:merge_request, source_branch: 'feature', target_branch: 'master') }
let(:project) { merge_request.project }
let(:pipeline) do
create(:ci_pipeline,
source: :merge_request_event,
merge_request: merge_request, project: project,
sha: merge_request.diff_head_sha,
merge_requests_as_head_pipeline: [merge_request])
end
let!(:job) { create(:ci_build, :with_deployment, :start_review_app, pipeline: pipeline, project: project) }
it 'returns environments' do
is_expected.to eq(pipeline.environments_in_self_and_descendants.to_a)
expect(subject.count).to be(1)
end
context 'when pipeline is not associated with environments' do
let!(:job) { create(:ci_build, pipeline: pipeline, project: project) }
it 'returns empty array' do
is_expected.to be_empty
end
end
context 'when pipeline is not a pipeline for merge request' do
let(:pipeline) do
create(:ci_pipeline,
project: project,
ref: 'feature',
sha: merge_request.diff_head_sha,
merge_requests_as_head_pipeline: [merge_request])
end
it 'returns empty relation' do
is_expected.to be_empty
end
end
end
describe "#reload_diff" do
it 'calls MergeRequests::ReloadDiffsService#execute with correct params' do
user = create(:user)
Loading
Loading
Loading
Loading
@@ -223,18 +223,6 @@
 
expect(prepare_staging_job.persisted_environment.state).to eq('available')
end
context 'when fix_related_environments_for_merge_requests feature flag is disabled' do
before do
stub_feature_flags(fix_related_environments_for_merge_requests: false)
end
it 'stops unrelated environments too' do
subject
expect(prepare_staging_job.persisted_environment.state).to eq('stopped')
end
end
end
end
 
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment