Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/workers/jira_connect/sync_merge_request_worker.rb4
-rw-r--r--db/post_migrate/20230316014651_remove_index_on_events_action.rb13
-rw-r--r--db/schema_migrations/202303160146511
-rw-r--r--db/structure.sql2
-rw-r--r--spec/workers/jira_connect/sync_merge_request_worker_spec.rb28
5 files changed, 41 insertions, 7 deletions
diff --git a/app/workers/jira_connect/sync_merge_request_worker.rb b/app/workers/jira_connect/sync_merge_request_worker.rb
index 76f62e55ab1..79718b98e98 100644
--- a/app/workers/jira_connect/sync_merge_request_worker.rb
+++ b/app/workers/jira_connect/sync_merge_request_worker.rb
@@ -18,7 +18,9 @@ module JiraConnect
return unless merge_request && project
- branches = [project.repository.find_branch(merge_request.source_branch)].compact
+ branches = if Feature.enabled?(:jira_include_keys_from_associated_mr_for_branch, project) && merge_request.open?
+ [project.repository.find_branch(merge_request.source_branch)].compact.presence
+ end
JiraConnect::SyncService.new(project).execute(merge_requests: [merge_request], branches: branches, update_sequence_id: update_sequence_id)
end
diff --git a/db/post_migrate/20230316014651_remove_index_on_events_action.rb b/db/post_migrate/20230316014651_remove_index_on_events_action.rb
new file mode 100644
index 00000000000..61a3077c330
--- /dev/null
+++ b/db/post_migrate/20230316014651_remove_index_on_events_action.rb
@@ -0,0 +1,13 @@
+# frozen_string_literal: true
+
+class RemoveIndexOnEventsAction < Gitlab::Database::Migration[2.1]
+ disable_ddl_transaction!
+
+ def up
+ remove_concurrent_index :events, :action, name: 'index_events_on_action'
+ end
+
+ def down
+ add_concurrent_index :events, :action, name: 'index_events_on_action'
+ end
+end
diff --git a/db/schema_migrations/20230316014651 b/db/schema_migrations/20230316014651
new file mode 100644
index 00000000000..70d7cbcef00
--- /dev/null
+++ b/db/schema_migrations/20230316014651
@@ -0,0 +1 @@
+f139b8097744ab3fabdf343bfb5e6a7a8426227b54238c4926b0446dd621ef64 \ No newline at end of file
diff --git a/db/structure.sql b/db/structure.sql
index 93aeb7d1a47..892a39ee338 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -30580,8 +30580,6 @@ CREATE INDEX index_events_for_group_activity ON events USING btree (group_id, ta
CREATE INDEX index_events_for_project_activity ON events USING btree (project_id, target_type, action, id);
-CREATE INDEX index_events_on_action ON events USING btree (action);
-
CREATE INDEX index_events_on_author_id_and_created_at ON events USING btree (author_id, created_at);
CREATE INDEX index_events_on_author_id_and_created_at_merge_requests ON events USING btree (author_id, created_at) WHERE ((target_type)::text = 'MergeRequest'::text);
diff --git a/spec/workers/jira_connect/sync_merge_request_worker_spec.rb b/spec/workers/jira_connect/sync_merge_request_worker_spec.rb
index bbedbf6a53b..459cabb5f20 100644
--- a/spec/workers/jira_connect/sync_merge_request_worker_spec.rb
+++ b/spec/workers/jira_connect/sync_merge_request_worker_spec.rb
@@ -37,6 +37,23 @@ RSpec.describe JiraConnect::SyncMergeRequestWorker, feature_category: :integrati
end
end
+ shared_examples 'does not send any branch data' do
+ it 'calls JiraConnect::SyncService correctly with nil branches' do
+ expect_next(JiraConnect::SyncService).to receive(:execute)
+ .with(merge_requests: [merge_request], branches: nil, update_sequence_id: update_sequence_id)
+
+ perform
+ end
+ end
+
+ context 'when the merge request is closed' do
+ before do
+ merge_request.close!
+ end
+
+ it_behaves_like 'does not send any branch data'
+ end
+
context 'when source branch cannot be found' do
before do
allow_next_found_instance_of(MergeRequest) do |mr|
@@ -44,12 +61,15 @@ RSpec.describe JiraConnect::SyncMergeRequestWorker, feature_category: :integrati
end
end
- it 'calls JiraConnect::SyncService will an empty branch' do
- expect_next(JiraConnect::SyncService).to receive(:execute)
- .with(merge_requests: [merge_request], branches: [], update_sequence_id: update_sequence_id)
+ it_behaves_like 'does not send any branch data'
+ end
- perform
+ context 'when flag is disabled' do
+ before do
+ stub_feature_flags(jira_include_keys_from_associated_mr_for_branch: false)
end
+
+ it_behaves_like 'does not send any branch data'
end
end
end