mirror of
https://github.com/gitlabhq/gitlabhq.git
synced 2025-08-10 03:00:46 +00:00
32 lines
1.0 KiB
Ruby
32 lines
1.0 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
# See https://docs.gitlab.com/ee/development/database/batched_background_migrations.html
|
|
# for more information on how to use batched background migrations
|
|
|
|
# Update below commented lines with appropriate values.
|
|
|
|
module Gitlab
|
|
module BackgroundMigration
|
|
class UpdateClosedMergedMrs < BatchedMigrationJob
|
|
START_DATE = DateTime.parse("2024-12-19")
|
|
END_DATE = DateTime.parse("2024-12-21")
|
|
CLOSED = 2 # ::MergeRequest.available_states[:closed]
|
|
MERGED = 3 # ::MergeRequest.available_states[:merged]
|
|
|
|
operation_name :update_closed_merged_mrs
|
|
|
|
feature_category :code_review_workflow
|
|
|
|
def perform
|
|
each_sub_batch do |sub_batch|
|
|
sub_batch
|
|
.where(state_id: CLOSED).where(updated_at: START_DATE..END_DATE)
|
|
.joins("JOIN merge_request_metrics ON (merge_requests.id = merge_request_metrics.merge_request_id)")
|
|
.where.not(merge_request_metrics: { merged_at: nil })
|
|
.update_all(state_id: MERGED)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|