diff --git a/app/controllers/import/bulk_imports_controller.rb b/app/controllers/import/bulk_imports_controller.rb index 8d01373d5a4902fe2dad0e94b2e8077818aca14d..33b49244eaf18f749a401a82de90242a508a2a08 100644 --- a/app/controllers/import/bulk_imports_controller.rb +++ b/app/controllers/import/bulk_imports_controller.rb @@ -157,8 +157,7 @@ def bulk_import_params end def ensure_bulk_import_enabled - render_404 unless Gitlab::CurrentSettings.bulk_import_enabled? || - Feature.enabled?(:override_bulk_import_disabled, current_user, type: :ops) + render_404 unless Gitlab::CurrentSettings.bulk_import_enabled? end def access_token_key diff --git a/app/views/groups/_import_group_from_another_instance_panel.html.haml b/app/views/groups/_import_group_from_another_instance_panel.html.haml index a219a385f0c152ed90ef9e0964b49168345d64e7..44e331ca6f14ff705969996c5df3bb647c7fce1b 100644 --- a/app/views/groups/_import_group_from_another_instance_panel.html.haml +++ b/app/views/groups/_import_group_from_another_instance_panel.html.haml @@ -1,4 +1,4 @@ -- bulk_imports_enabled = Gitlab::CurrentSettings.bulk_import_enabled? || Feature.enabled?(:override_bulk_import_disabled, current_user, type: :ops) +- bulk_imports_enabled = Gitlab::CurrentSettings.bulk_import_enabled? = gitlab_ui_form_with url: configure_import_bulk_imports_path(namespace_id: params[:parent_id]), class: 'gl-show-field-errors' do |f| .gl-border-l-solid.gl-border-r-solid.gl-border-t-solid.gl-border-default.gl-border-1.gl-p-5.gl-mt-4 diff --git a/config/feature_flags/ops/override_bulk_import_disabled.yml b/config/feature_flags/ops/override_bulk_import_disabled.yml deleted file mode 100644 index 057170a30ad8a77ae42df9fc1a99f3b940daf2d5..0000000000000000000000000000000000000000 --- a/config/feature_flags/ops/override_bulk_import_disabled.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -name: override_bulk_import_disabled -introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/132431 -rollout_issue_url: -milestone: '16.5' -type: ops -group: group::import and integrate -default_enabled: false diff --git a/lib/api/bulk_imports.rb b/lib/api/bulk_imports.rb index a42245bf732a62c84699d0ec2a2dae6ea16ccf5b..2cbadbfa07ee97d3844a1bfb66382a15e6edad1b 100644 --- a/lib/api/bulk_imports.rb +++ b/lib/api/bulk_imports.rb @@ -33,8 +33,7 @@ def bulk_import_entity end before do - not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? || - Feature.enabled?(:override_bulk_import_disabled, current_user, type: :ops) + not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? authenticate! end diff --git a/lib/api/group_export.rb b/lib/api/group_export.rb index 086d712cc18bacd9429e30353f9b0fe525195663..4e7c8b134dcfe5272064e814f735625533e65b1e 100644 --- a/lib/api/group_export.rb +++ b/lib/api/group_export.rb @@ -70,8 +70,7 @@ class GroupExport < ::API::Base resource do before do - not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? || - Feature.enabled?(:override_bulk_import_disabled, current_user, type: :ops) + not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? end desc 'Start relations export' do diff --git a/lib/api/project_export.rb b/lib/api/project_export.rb index 1e445c3e12814f10b307a2eb45052281624de9de..6d4db1dd9804af14f926f1aa86ccc40784bc2111 100644 --- a/lib/api/project_export.rb +++ b/lib/api/project_export.rb @@ -110,8 +110,7 @@ class ProjectExport < ::API::Base resource do before do - not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? || - Feature.enabled?(:override_bulk_import_disabled, current_user, type: :ops) + not_found! unless Gitlab::CurrentSettings.bulk_import_enabled? authorize_admin_project end diff --git a/spec/controllers/import/bulk_imports_controller_spec.rb b/spec/controllers/import/bulk_imports_controller_spec.rb index 7227ddcf86aa65377e0507098e77712da9a57f72..a7adc589c38265f4da1f0d49f2b794e173c58526 100644 --- a/spec/controllers/import/bulk_imports_controller_spec.rb +++ b/spec/controllers/import/bulk_imports_controller_spec.rb @@ -514,7 +514,6 @@ def get_status(params_override = {}, format = :json) context 'when importing groups and projects by direct transfer is disabled' do before do stub_application_setting(bulk_import_enabled: false) - stub_feature_flags(override_bulk_import_disabled: false) allow_next_instance_of(BulkImports::Clients::HTTP) do |instance| allow(instance).to receive(:validate_instance_version!).and_return(true) @@ -539,31 +538,6 @@ def get_status(params_override = {}, format = :json) expect(response).to have_gitlab_http_status(:not_found) end end - - context 'when the override_bulk_import_disabled feature flag is enabled' do - before do - stub_feature_flags(override_bulk_import_disabled: true) - end - - context 'POST configure' do - it 'does not return 404' do - post :configure, params: { - bulk_import_gitlab_access_token: 'token', bulk_import_gitlab_url: 'https://gitlab.example' - } - - expect(response).to have_gitlab_http_status(:found) - expect(response).to redirect_to(status_import_bulk_imports_url) - end - end - - context 'GET status' do - it 'does not return 404' do - get :status - - expect(response).to have_gitlab_http_status(:ok) - end - end - end end end diff --git a/spec/features/groups/import_export/connect_instance_spec.rb b/spec/features/groups/import_export/connect_instance_spec.rb index ba38cc51893139a8d33182fbf5d7bc6f9270badb..a75833114d852e62dd4b8648d2bb890f73713847 100644 --- a/spec/features/groups/import_export/connect_instance_spec.rb +++ b/spec/features/groups/import_export/connect_instance_spec.rb @@ -80,34 +80,14 @@ context 'when importing groups and projects by direct transfer is disabled' do before do stub_application_setting(bulk_import_enabled: false) - end - - context 'when the override_bulk_import_disabled feature flag is disabled' do - before do - stub_feature_flags(override_bulk_import_disabled: false) - open_import_group - end - - it 'renders fields and button disabled' do - expect(page).to have_field('GitLab source instance base URL', disabled: true) - expect(page).to have_field('Personal access token', disabled: true) - expect(page).to have_button('Connect instance', disabled: true) - end + open_import_group end - context 'when the override_bulk_import_disabled feature flag is enabled' do - before do - stub_feature_flags(override_bulk_import_disabled: true) - - open_import_group - end - - it 'renders fields and button enabled' do - expect(page).to have_field('GitLab source instance base URL', disabled: false) - expect(page).to have_field('Personal access token', disabled: false) - expect(page).to have_button('Connect instance', disabled: false) - end + it 'renders fields and button disabled' do + expect(page).to have_field('GitLab source instance base URL', disabled: true) + expect(page).to have_field('Personal access token', disabled: true) + expect(page).to have_button('Connect instance', disabled: true) end end diff --git a/spec/requests/api/bulk_imports_spec.rb b/spec/requests/api/bulk_imports_spec.rb index c4039a6675e8c590dd8c9a05e799c7a1b3f5f093..bee4de01af2f7900c90b25a401e5d353aa6326d7 100644 --- a/spec/requests/api/bulk_imports_spec.rb +++ b/spec/requests/api/bulk_imports_spec.rb @@ -52,29 +52,11 @@ shared_examples 'disabled feature' do before do stub_application_setting(bulk_import_enabled: false) - stub_feature_flags(override_bulk_import_disabled: false) end it_behaves_like '404 response' do let(:message) { '404 Not Found' } end - - it 'enables the feature when override flag is enabled for the user' do - stub_feature_flags(override_bulk_import_disabled: user) - - request - - expect(response).not_to have_gitlab_http_status(:not_found) - end - - it 'does not enable the feature when override flag is enabled for another user' do - other_user = create(:user) - stub_feature_flags(override_bulk_import_disabled: other_user) - - request - - expect(response).to have_gitlab_http_status(:not_found) - end end describe 'GET /bulk_imports' do diff --git a/spec/requests/api/group_export_spec.rb b/spec/requests/api/group_export_spec.rb index fd7c74c8193c399361eb50300b2c30fda0afc921..e88516b6546ea86b770dbe0f2c6d5befa9cab160 100644 --- a/spec/requests/api/group_export_spec.rb +++ b/spec/requests/api/group_export_spec.rb @@ -423,29 +423,11 @@ before do stub_application_setting(bulk_import_enabled: false) - stub_feature_flags(override_bulk_import_disabled: false) end it_behaves_like '404 response' do let(:message) { '404 Not Found' } end - - it 'enables the feature when override flag is enabled for the user' do - stub_feature_flags(override_bulk_import_disabled: user) - - request - - expect(response).to have_gitlab_http_status(:accepted) - end - - it 'does not enable the feature when override flag is enabled for another user' do - other_user = create(:user) - stub_feature_flags(override_bulk_import_disabled: other_user) - - request - - expect(response).to have_gitlab_http_status(:not_found) - end end end end diff --git a/spec/requests/api/project_export_spec.rb b/spec/requests/api/project_export_spec.rb index 3dbd67621b72c19cd412b87c69c8aa7ed84612d8..c694e6ed8d603552ea15281113961c288196a899 100644 --- a/spec/requests/api/project_export_spec.rb +++ b/spec/requests/api/project_export_spec.rb @@ -755,63 +755,37 @@ context 'with bulk_import is disabled' do before do stub_application_setting(bulk_import_enabled: false) - stub_feature_flags(override_bulk_import_disabled: false) - end - - shared_examples 'flag override' do |expected_http_status:| - it 'enables the feature when override flag is enabled for the user' do - stub_feature_flags(override_bulk_import_disabled: user) - - request - - expect(response).to have_gitlab_http_status(expected_http_status) - end - - it 'does not enable the feature when override flag is enabled for another user' do - other_user = create(:user) - stub_feature_flags(override_bulk_import_disabled: other_user) - - request - - expect(response).to have_gitlab_http_status(:not_found) - end end describe 'POST /projects/:id/export_relations' do - subject(:request) { post api(path, user) } - it_behaves_like '404 response' do let(:message) { '404 Not Found' } - end - it_behaves_like 'flag override', expected_http_status: :accepted + subject(:request) { post api(path, user) } + end end describe 'GET /projects/:id/export_relations/download' do let_it_be(:export) { create(:bulk_import_export, project: project, relation: 'labels', user: user) } let_it_be(:upload) { create(:bulk_import_export_upload, export: export) } - subject(:request) { get api(download_path, user) } - before do upload.update!(export_file: fixture_file_upload('spec/fixtures/bulk_imports/gz/labels.ndjson.gz')) end it_behaves_like '404 response' do let(:message) { '404 Not Found' } - end - it_behaves_like 'flag override', expected_http_status: :ok + subject(:request) { get api(download_path, user) } + end end describe 'GET /projects/:id/export_relations/status' do - subject(:request) { get api(status_path, user) } - it_behaves_like '404 response' do let(:message) { '404 Not Found' } - end - it_behaves_like 'flag override', expected_http_status: :ok + subject(:request) { get api(status_path, user) } + end end end end