diff options
Diffstat (limited to 'app/workers/merge_requests/delete_source_branch_worker.rb')
-rw-r--r-- | app/workers/merge_requests/delete_source_branch_worker.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/app/workers/merge_requests/delete_source_branch_worker.rb b/app/workers/merge_requests/delete_source_branch_worker.rb index 69bd3949e9d..66392c670b5 100644 --- a/app/workers/merge_requests/delete_source_branch_worker.rb +++ b/app/workers/merge_requests/delete_source_branch_worker.rb @@ -18,9 +18,13 @@ class MergeRequests::DeleteSourceBranchWorker # Source branch changed while it's being removed return if merge_request.source_branch_sha != source_branch_sha - ::Branches::DeleteService.new(merge_request.source_project, user) + delete_service_result = ::Branches::DeleteService.new(merge_request.source_project, user) .execute(merge_request.source_branch) + if Feature.enabled?(:track_delete_source_errors, merge_request.source_project) + delete_service_result.track_exception if delete_service_result&.error? + end + ::MergeRequests::RetargetChainService.new(project: merge_request.source_project, current_user: user) .execute(merge_request) rescue ActiveRecord::RecordNotFound |