From b28f767ea3e4788c1cbc5decc72f9ea78ba1c1c9 Mon Sep 17 00:00:00 2001
From: bmarjanovic <bmarjanovic@gitlab.com>
Date: Thu, 18 Jul 2024 10:20:10 +0200
Subject: [PATCH] Release inheritance feature for Integrations API

Changelog: added
---
 .../integration_api_inheritance.yml              |  9 ---------
 lib/api/integrations.rb                          | 16 +++++-----------
 spec/requests/api/integrations_spec.rb           | 15 ---------------
 3 files changed, 5 insertions(+), 35 deletions(-)
 delete mode 100644 config/feature_flags/gitlab_com_derisk/integration_api_inheritance.yml

diff --git a/config/feature_flags/gitlab_com_derisk/integration_api_inheritance.yml b/config/feature_flags/gitlab_com_derisk/integration_api_inheritance.yml
deleted file mode 100644
index d54a62cfc5cfe..0000000000000
--- a/config/feature_flags/gitlab_com_derisk/integration_api_inheritance.yml
+++ /dev/null
@@ -1,9 +0,0 @@
----
-name: integration_api_inheritance
-feature_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/395002
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154915
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/467186
-milestone: '17.2'
-group: group::import and integrate
-type: gitlab_com_derisk
-default_enabled: false
diff --git a/lib/api/integrations.rb b/lib/api/integrations.rb
index 3ebeddad7ca0f..792aacd74c693 100644
--- a/lib/api/integrations.rb
+++ b/lib/api/integrations.rb
@@ -110,20 +110,14 @@ def integration_attributes(integration)
 
             render_api_error!('400 Bad Request', 400) if integration.nil?
 
-            if Feature.enabled?(:integration_api_inheritance, type: :gitlab_com_derisk)
-              result = ::Integrations::UpdateService.new(
-                current_user: current_user, integration: integration, attributes: params
-              ).execute
+            result = ::Integrations::UpdateService.new(
+              current_user: current_user, integration: integration, attributes: params
+            ).execute
 
-              if result.success?
-                present integration, with: Entities::ProjectIntegration
-              else
-                render_api_error!(result.message, 400)
-              end
-            elsif integration&.update(params)
+            if result.success?
               present integration, with: Entities::ProjectIntegration
             else
-              render_api_error!('400 Bad Request', 400)
+              render_api_error!(result.message, 400)
             end
           end
         end
diff --git a/spec/requests/api/integrations_spec.rb b/spec/requests/api/integrations_spec.rb
index e56f44e900b2a..ec4d918e4ca77 100644
--- a/spec/requests/api/integrations_spec.rb
+++ b/spec/requests/api/integrations_spec.rb
@@ -243,21 +243,6 @@
         expect(response).to have_gitlab_http_status(:ok)
         expect(json_response['inherited']).to eq(true)
       end
-
-      context 'when `integration_api_inheritance` feature is disabled' do
-        before do
-          stub_feature_flags(integration_api_inheritance: false)
-        end
-
-        it 'accepts `branches_to_be_notified` and `notify_only_broken_pipelines` for update' do
-          put api("/projects/#{project.id}/#{endpoint}/#{integration_name}", user),
-            params: params.merge(notify_only_broken_pipelines: true, branches_to_be_notified: 'all')
-
-          expect(response).to have_gitlab_http_status(:ok)
-          expect(json_response['properties']['branches_to_be_notified']).to eq('all')
-          expect(json_response['properties']['notify_only_broken_pipelines']).to eq(true)
-        end
-      end
     end
 
     describe 'Hangouts Chat integration' do
-- 
GitLab