From f98934d1cba0ef136a9ffc7da9eeb6128f674175 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Sat, 11 Jun 2022 15:56:29 +0530 Subject: [PATCH 01/11] Event type information in approval rule audit event streaming Changelog: added EE: true --- .../project_rule_destroy_service.rb | 1 + .../concerns/approval_rules/updater.rb | 7 +++-- .../approval_rules/create_service_spec.rb | 29 ++++++++++++++++++ .../project_rule_destroy_service_spec.rb | 22 ++++++++++---- .../approval_rules/update_service_spec.rb | 30 +++++++++++++++++++ 5 files changed, 81 insertions(+), 8 deletions(-) diff --git a/ee/app/services/approval_rules/project_rule_destroy_service.rb b/ee/app/services/approval_rules/project_rule_destroy_service.rb index 5e1fc53dd3d979..31005bb4a61488 100644 --- a/ee/app/services/approval_rules/project_rule_destroy_service.rb +++ b/ee/app/services/approval_rules/project_rule_destroy_service.rb @@ -36,6 +36,7 @@ def remove_associated_approval_rules_from_unmerged_merge_requests def audit_deletion audit_context = { + name: 'merge_request_approval_rule_deleted', author: current_user, scope: rule.project, target: rule, diff --git a/ee/app/services/concerns/approval_rules/updater.rb b/ee/app/services/concerns/approval_rules/updater.rb index c6e493dd4bb317..bf960046a45b82 100644 --- a/ee/app/services/concerns/approval_rules/updater.rb +++ b/ee/app/services/concerns/approval_rules/updater.rb @@ -22,8 +22,9 @@ def action private def with_audit_logged(&block) + name = rule.new_record? ? 'merge_request_approval_rule_created' : 'merge_request_approval_rule_updated' audit_context = { - name: 'update_aproval_rules', + name: name, author: current_user, scope: rule.project, target: rule @@ -62,7 +63,9 @@ def log_audit_event(rule) :approvals_required, as: 'number of required approvals', entity: rule.project, - model: rule + model: rule, + use_auditor: true, + event_type: 'merge_request_approval_rule_updated' ) end end diff --git a/ee/spec/services/approval_rules/create_service_spec.rb b/ee/spec/services/approval_rules/create_service_spec.rb index 5c82b5ad998185..1d8ee9b818c713 100644 --- a/ee/spec/services/approval_rules/create_service_spec.rb +++ b/ee/spec/services/approval_rules/create_service_spec.rb @@ -349,4 +349,33 @@ end end end + + context 'audit event is streamed with correct event type', :request_store do + let_it_be(:user) { create(:user)} + let_it_be(:group) { create(:group) } + let_it_be(:project) { create(:project, creator: user, group: group) } + let_it_be(:new_approvers) { create_list(:user, 2) } + let_it_be(:new_groups) { create_list(:group, 2, :private) } + + subject do + described_class.new( + project, + user, + { name: 'security', + approvals_required: 1, + user_ids: new_approvers.map(&:id), + group_ids: new_groups.map(&:id) } + ).execute + end + + before do + group.add_owner(user) + stub_licensed_features(external_audit_events: true) + group.external_audit_event_destinations.create!(destination_url: 'http://example.com') + end + + it_behaves_like 'sends correct event type in audit event stream' do + let_it_be(:event_type) { 'merge_request_approval_rule_created' } + end + end end diff --git a/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb b/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb index a0b232d2529a67..46770c313b5627 100644 --- a/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb +++ b/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb @@ -3,18 +3,19 @@ require 'spec_helper' RSpec.describe ApprovalRules::ProjectRuleDestroyService do - let(:project) { create(:project, :repository) } + let(:group) { create(:group) } + let(:project) { create(:project, :repository, group: group) } let(:merge_request) { create(:merge_request, source_project: project, target_project: project) } describe '#execute' do let!(:project_rule) { create(:approval_project_rule, project: project) } let(:current_user) { create(:user, name: 'Bruce Wayne') } - subject { described_class.new(project_rule, current_user) } + subject { described_class.new(project_rule, current_user).execute } shared_context 'an audit event is added' do it 'adds an audit event' do - expect { subject.execute }.to change { AuditEvent.count }.by(1) + expect { subject }.to change { AuditEvent.count }.by(1) expect(AuditEvent.last.details).to include({ author_name: current_user.name, custom_message: 'Deleted approval rule', @@ -22,11 +23,20 @@ target_id: project_rule.id }) end + + before do + stub_licensed_features(external_audit_events: true) + group.external_audit_event_destinations.create!(destination_url: 'http://example.com') + end + + it_behaves_like 'sends correct event type in audit event stream' do + let_it_be(:event_type) { 'merge_request_approval_rule_deleted' } + end end context 'when there is no merge request rules' do it 'destroys project rule' do - expect { subject.execute }.to change { ApprovalProjectRule.count }.by(-1) + expect { subject }.to change { ApprovalProjectRule.count }.by(-1) end include_context 'an audit event is added' @@ -41,7 +51,7 @@ context 'when open' do it 'destroys merge request rules' do - expect { subject.execute }.to change { ApprovalMergeRequestRule.count }.by(-1) + expect { subject }.to change { ApprovalMergeRequestRule.count }.by(-1) end include_context 'an audit event is added' @@ -53,7 +63,7 @@ end it 'does nothing' do - expect { subject.execute }.not_to change { ApprovalMergeRequestRule.count } + expect { subject }.not_to change { ApprovalMergeRequestRule.count } end include_context 'an audit event is added' diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index 4f0f6443070eed..e4a026378f5a95 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -312,4 +312,34 @@ it_behaves_like "editable" end + + context 'audit event is streamed with correct event type', :request_store do + let_it_be(:user) { create(:user)} + let_it_be(:group) { create(:group) } + let_it_be(:project) { create(:project, creator: user, group: group) } + let_it_be(:approval_rule) { project.approval_rules.create!(name: 'foo', approvals_required: 2) } + let_it_be(:new_approvers) { create_list(:user, 2) } + let_it_be(:new_groups) { create_list(:group, 2, :private) } + + subject do + described_class.new( + approval_rule, + user, + { name: 'security', + approvals_required: 1, + user_ids: new_approvers.map(&:id), + group_ids: new_groups.map(&:id) } + ).execute + end + + before do + group.add_owner(user) + stub_licensed_features(external_audit_events: true) + group.external_audit_event_destinations.create!(destination_url: 'http://example.com') + end + + it_behaves_like 'sends correct event type in audit event stream' do + let_it_be(:event_type) { 'merge_request_approval_rule_updated' } + end + end end -- GitLab From 9a3188c78a0f925abf24341aeda88d5a5e10fc5a Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Sun, 12 Jun 2022 17:24:42 +0530 Subject: [PATCH 02/11] Audit events feature check --- ee/lib/gitlab/audit/auditor.rb | 8 ++++++++ ee/spec/services/approval_rules/update_service_spec.rb | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ee/lib/gitlab/audit/auditor.rb b/ee/lib/gitlab/audit/auditor.rb index d1ee069fd1adc2..45a92054b604bb 100644 --- a/ee/lib/gitlab/audit/auditor.rb +++ b/ee/lib/gitlab/audit/auditor.rb @@ -43,6 +43,7 @@ class Auditor # @return result of block execution def self.audit(context, &block) auditor = new(context) + return unless auditor.audit_events_enabled? return unless auditor.audit_enabled? @@ -68,6 +69,13 @@ def initialize(context = {}) @target_details = @context[:target_details] end + def audit_events_enabled? + return true if ::License.feature_available?(:admin_audit_log) + return true if ::License.feature_available?(:extended_audit_events) + + @scope.respond_to?(:feature_available?) && @scope.licensed_feature_available?(:audit_events) + end + def multiple_audit ::Gitlab::Audit::EventQueue.begin! diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index e4a026378f5a95..02320991fa5d4c 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -289,7 +289,7 @@ end end - context 'when not licensed' do + context 'when not licensed', :request_store do before do stub_licensed_features( admin_audit_log: false, -- GitLab From 8b7d33c13d69c4b8842fa3c8d81211346c0052a3 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Thu, 16 Jun 2022 12:06:40 +0530 Subject: [PATCH 03/11] License feature checks in audit changes --- ee/lib/gitlab/audit/auditor.rb | 8 -------- 1 file changed, 8 deletions(-) diff --git a/ee/lib/gitlab/audit/auditor.rb b/ee/lib/gitlab/audit/auditor.rb index 45a92054b604bb..d1ee069fd1adc2 100644 --- a/ee/lib/gitlab/audit/auditor.rb +++ b/ee/lib/gitlab/audit/auditor.rb @@ -43,7 +43,6 @@ class Auditor # @return result of block execution def self.audit(context, &block) auditor = new(context) - return unless auditor.audit_events_enabled? return unless auditor.audit_enabled? @@ -69,13 +68,6 @@ def initialize(context = {}) @target_details = @context[:target_details] end - def audit_events_enabled? - return true if ::License.feature_available?(:admin_audit_log) - return true if ::License.feature_available?(:extended_audit_events) - - @scope.respond_to?(:feature_available?) && @scope.licensed_feature_available?(:audit_events) - end - def multiple_audit ::Gitlab::Audit::EventQueue.begin! -- GitLab From d0f8ebba5034f76636a1f195f74feea838d75029 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Thu, 16 Jun 2022 14:10:24 +0530 Subject: [PATCH 04/11] Refactor update service spec --- .../approval_rules/update_service_spec.rb | 43 ++++++------------- 1 file changed, 12 insertions(+), 31 deletions(-) diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index 02320991fa5d4c..5cb4cc8a014fa9 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -203,6 +203,9 @@ end describe 'audit events' do + let_it_be(:user) { create(:user)} + let_it_be(:parent_group) { create(:group) } + let_it_be(:project) { create(:project, creator: user, group: parent_group) } let_it_be(:approver) { create(:user, name: 'Batman') } let_it_be(:group) { create(:group, name: 'Justice League') } let_it_be(:new_approver) { create(:user, name: 'Spiderman') } @@ -219,6 +222,7 @@ end before do + parent_group.add_owner(user) project.add_reporter approver project.add_reporter new_approver end @@ -226,6 +230,8 @@ context 'when licensed' do before do stub_licensed_features(audit_events: true) + stub_licensed_features(external_audit_events: true) + parent_group.external_audit_event_destinations.create!(destination_url: 'http://example.com') end context 'when rule update operation succeeds', :request_store do @@ -235,6 +241,11 @@ end.to change { AuditEvent.count }.by(1) end + it_behaves_like 'sends correct event type in audit event stream' do + let_it_be(:event_type) { 'merge_request_approval_rule_updated' } + subject {described_class.new(approval_rule, user, approvals_required: 1).execute} + end + it 'audits the number of required approvals change' do described_class.new(approval_rule, user, approvals_required: 1).execute @@ -289,7 +300,7 @@ end end - context 'when not licensed', :request_store do + context 'when not licensed' do before do stub_licensed_features( admin_audit_log: false, @@ -312,34 +323,4 @@ it_behaves_like "editable" end - - context 'audit event is streamed with correct event type', :request_store do - let_it_be(:user) { create(:user)} - let_it_be(:group) { create(:group) } - let_it_be(:project) { create(:project, creator: user, group: group) } - let_it_be(:approval_rule) { project.approval_rules.create!(name: 'foo', approvals_required: 2) } - let_it_be(:new_approvers) { create_list(:user, 2) } - let_it_be(:new_groups) { create_list(:group, 2, :private) } - - subject do - described_class.new( - approval_rule, - user, - { name: 'security', - approvals_required: 1, - user_ids: new_approvers.map(&:id), - group_ids: new_groups.map(&:id) } - ).execute - end - - before do - group.add_owner(user) - stub_licensed_features(external_audit_events: true) - group.external_audit_event_destinations.create!(destination_url: 'http://example.com') - end - - it_behaves_like 'sends correct event type in audit event stream' do - let_it_be(:event_type) { 'merge_request_approval_rule_updated' } - end - end end -- GitLab From 7e89703b9afffe77aca3eb6c62d5d446b2528a76 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Mon, 27 Jun 2022 15:16:22 +0530 Subject: [PATCH 05/11] Force audit changes to use auditor --- .../services/concerns/approval_rules/updater.rb | 1 - .../services/audit_events/build_service_spec.rb | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/ee/app/services/concerns/approval_rules/updater.rb b/ee/app/services/concerns/approval_rules/updater.rb index bf960046a45b82..71b87ff178936e 100644 --- a/ee/app/services/concerns/approval_rules/updater.rb +++ b/ee/app/services/concerns/approval_rules/updater.rb @@ -64,7 +64,6 @@ def log_audit_event(rule) as: 'number of required approvals', entity: rule.project, model: rule, - use_auditor: true, event_type: 'merge_request_approval_rule_updated' ) end diff --git a/ee/spec/services/audit_events/build_service_spec.rb b/ee/spec/services/audit_events/build_service_spec.rb index f21f4c5ed92f17..e1fec0ea1b0bfc 100644 --- a/ee/spec/services/audit_events/build_service_spec.rb +++ b/ee/spec/services/audit_events/build_service_spec.rb @@ -88,6 +88,22 @@ end end + context 'when overriding target details' do + subject(:service) do + described_class.new( + author: author, + scope: scope, + target: target, + message: message, + target_details: "This is my target details" + ) + end + + it 'uses impersonator current_sign_in_ip' do + expect(event.target_details).to eq("This is my target details") + end + end + context 'when deploy token is passed as author' do let(:service) do described_class.new( -- GitLab From 7dab0ddf09ac89fd8990960bb0ca1d26f6c6057d Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Tue, 28 Jun 2022 11:09:52 +0530 Subject: [PATCH 06/11] Add custom message check in test cases --- ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb | 1 + ee/spec/services/audit_events/build_service_spec.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb b/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb index 8580a906ec59a7..cc938935c8074a 100644 --- a/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb +++ b/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb @@ -33,6 +33,7 @@ event = AuditEvent.last change_text = setting.to_s.humanize(capitalize: false) + expect(event.details).to eq({ change: change_text, author_name: author.name, target_id: protected_branch.id, diff --git a/ee/spec/services/audit_events/build_service_spec.rb b/ee/spec/services/audit_events/build_service_spec.rb index e1fec0ea1b0bfc..756ad9130e6e04 100644 --- a/ee/spec/services/audit_events/build_service_spec.rb +++ b/ee/spec/services/audit_events/build_service_spec.rb @@ -99,7 +99,7 @@ ) end - it 'uses impersonator current_sign_in_ip' do + it 'uses correct target details' do expect(event.target_details).to eq("This is my target details") end end -- GitLab From 72282e2a16de1c93a1d9b67713d5c00334276096 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Tue, 28 Jun 2022 11:13:57 +0530 Subject: [PATCH 07/11] Apply review feedback --- ee/spec/services/approval_rules/create_service_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ee/spec/services/approval_rules/create_service_spec.rb b/ee/spec/services/approval_rules/create_service_spec.rb index 1d8ee9b818c713..7ee0f9e2b71640 100644 --- a/ee/spec/services/approval_rules/create_service_spec.rb +++ b/ee/spec/services/approval_rules/create_service_spec.rb @@ -356,6 +356,7 @@ let_it_be(:project) { create(:project, creator: user, group: group) } let_it_be(:new_approvers) { create_list(:user, 2) } let_it_be(:new_groups) { create_list(:group, 2, :private) } + let_it_be(:destination) { create(:external_audit_event_destination, group: group) } subject do described_class.new( @@ -371,7 +372,6 @@ before do group.add_owner(user) stub_licensed_features(external_audit_events: true) - group.external_audit_event_destinations.create!(destination_url: 'http://example.com') end it_behaves_like 'sends correct event type in audit event stream' do -- GitLab From 8c30c26fe65345db9daa2b1c73c582ca5cb7fc1e Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Tue, 5 Jul 2022 14:02:08 +0530 Subject: [PATCH 08/11] Remove extra line and use let it be for url create --- ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb | 1 - ee/spec/services/approval_rules/update_service_spec.rb | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb b/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb index cc938935c8074a..8580a906ec59a7 100644 --- a/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb +++ b/ee/spec/lib/ee/audit/protected_branches_changes_auditor_spec.rb @@ -33,7 +33,6 @@ event = AuditEvent.last change_text = setting.to_s.humanize(capitalize: false) - expect(event.details).to eq({ change: change_text, author_name: author.name, target_id: protected_branch.id, diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index 5cb4cc8a014fa9..7f82d88b90e381 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -205,6 +205,7 @@ describe 'audit events' do let_it_be(:user) { create(:user)} let_it_be(:parent_group) { create(:group) } + let_it_be(:destination) { create(:external_audit_event_destination, group: parent_group) } let_it_be(:project) { create(:project, creator: user, group: parent_group) } let_it_be(:approver) { create(:user, name: 'Batman') } let_it_be(:group) { create(:group, name: 'Justice League') } @@ -231,7 +232,6 @@ before do stub_licensed_features(audit_events: true) stub_licensed_features(external_audit_events: true) - parent_group.external_audit_event_destinations.create!(destination_url: 'http://example.com') end context 'when rule update operation succeeds', :request_store do -- GitLab From 2df30f99180637b136cc7be299a8274b63b94897 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Tue, 12 Jul 2022 12:09:36 +0530 Subject: [PATCH 09/11] Change event type names --- .../services/approval_rules/project_rule_destroy_service.rb | 2 +- ee/app/services/concerns/approval_rules/updater.rb | 4 ++-- ee/spec/services/approval_rules/create_service_spec.rb | 2 +- .../approval_rules/project_rule_destroy_service_spec.rb | 2 +- ee/spec/services/approval_rules/update_service_spec.rb | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ee/app/services/approval_rules/project_rule_destroy_service.rb b/ee/app/services/approval_rules/project_rule_destroy_service.rb index 31005bb4a61488..fd508bbe776f99 100644 --- a/ee/app/services/approval_rules/project_rule_destroy_service.rb +++ b/ee/app/services/approval_rules/project_rule_destroy_service.rb @@ -36,7 +36,7 @@ def remove_associated_approval_rules_from_unmerged_merge_requests def audit_deletion audit_context = { - name: 'merge_request_approval_rule_deleted', + name: 'approval_rule_deleted', author: current_user, scope: rule.project, target: rule, diff --git a/ee/app/services/concerns/approval_rules/updater.rb b/ee/app/services/concerns/approval_rules/updater.rb index 71b87ff178936e..4526072da79450 100644 --- a/ee/app/services/concerns/approval_rules/updater.rb +++ b/ee/app/services/concerns/approval_rules/updater.rb @@ -22,7 +22,7 @@ def action private def with_audit_logged(&block) - name = rule.new_record? ? 'merge_request_approval_rule_created' : 'merge_request_approval_rule_updated' + name = rule.new_record? ? 'approval_rule_created' : 'approval_rule_updated' audit_context = { name: name, author: current_user, @@ -64,7 +64,7 @@ def log_audit_event(rule) as: 'number of required approvals', entity: rule.project, model: rule, - event_type: 'merge_request_approval_rule_updated' + event_type: 'approval_rule_updated' ) end end diff --git a/ee/spec/services/approval_rules/create_service_spec.rb b/ee/spec/services/approval_rules/create_service_spec.rb index 7ee0f9e2b71640..31e8cffaaa352b 100644 --- a/ee/spec/services/approval_rules/create_service_spec.rb +++ b/ee/spec/services/approval_rules/create_service_spec.rb @@ -375,7 +375,7 @@ end it_behaves_like 'sends correct event type in audit event stream' do - let_it_be(:event_type) { 'merge_request_approval_rule_created' } + let_it_be(:event_type) { 'approval_rule_created' } end end end diff --git a/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb b/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb index 46770c313b5627..9cf099543d2119 100644 --- a/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb +++ b/ee/spec/services/approval_rules/project_rule_destroy_service_spec.rb @@ -30,7 +30,7 @@ end it_behaves_like 'sends correct event type in audit event stream' do - let_it_be(:event_type) { 'merge_request_approval_rule_deleted' } + let_it_be(:event_type) { 'approval_rule_deleted' } end end diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index 7f82d88b90e381..dc0ab7dfa59cba 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -242,7 +242,7 @@ end it_behaves_like 'sends correct event type in audit event stream' do - let_it_be(:event_type) { 'merge_request_approval_rule_updated' } + let_it_be(:event_type) { 'approval_rule_updated' } subject {described_class.new(approval_rule, user, approvals_required: 1).execute} end -- GitLab From c6913919043b52c9fc3c1790cc7e0e697ad43228 Mon Sep 17 00:00:00 2001 From: Alexandru Croitor Date: Wed, 13 Jul 2022 14:56:15 +0000 Subject: [PATCH 10/11] Apply 1 suggestion(s) to 1 file(s) --- ee/spec/services/approval_rules/update_service_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index dc0ab7dfa59cba..b1e44a58ad0c9d 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -243,7 +243,7 @@ it_behaves_like 'sends correct event type in audit event stream' do let_it_be(:event_type) { 'approval_rule_updated' } - subject {described_class.new(approval_rule, user, approvals_required: 1).execute} + subject { described_class.new(approval_rule, user, approvals_required: 1).execute } end it 'audits the number of required approvals change' do -- GitLab From 86aadca283cef280fbb4efe40e3ea2b254aa8858 Mon Sep 17 00:00:00 2001 From: harsimarsandhu Date: Fri, 15 Jul 2022 10:26:43 +0530 Subject: [PATCH 11/11] Rename event type to update aproval rules --- ee/app/services/concerns/approval_rules/updater.rb | 4 ++-- ee/spec/services/approval_rules/update_service_spec.rb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ee/app/services/concerns/approval_rules/updater.rb b/ee/app/services/concerns/approval_rules/updater.rb index 4526072da79450..edb0bd3f280c86 100644 --- a/ee/app/services/concerns/approval_rules/updater.rb +++ b/ee/app/services/concerns/approval_rules/updater.rb @@ -22,7 +22,7 @@ def action private def with_audit_logged(&block) - name = rule.new_record? ? 'approval_rule_created' : 'approval_rule_updated' + name = rule.new_record? ? 'approval_rule_created' : 'update_aproval_rules' audit_context = { name: name, author: current_user, @@ -64,7 +64,7 @@ def log_audit_event(rule) as: 'number of required approvals', entity: rule.project, model: rule, - event_type: 'approval_rule_updated' + event_type: 'update_aproval_rules' ) end end diff --git a/ee/spec/services/approval_rules/update_service_spec.rb b/ee/spec/services/approval_rules/update_service_spec.rb index b1e44a58ad0c9d..94a44e51ed40e4 100644 --- a/ee/spec/services/approval_rules/update_service_spec.rb +++ b/ee/spec/services/approval_rules/update_service_spec.rb @@ -242,8 +242,8 @@ end it_behaves_like 'sends correct event type in audit event stream' do - let_it_be(:event_type) { 'approval_rule_updated' } - subject { described_class.new(approval_rule, user, approvals_required: 1).execute } + let_it_be(:event_type) { 'update_aproval_rules' } + subject {described_class.new(approval_rule, user, approvals_required: 1).execute} end it 'audits the number of required approvals change' do -- GitLab