diff options
author | Shinya Maeda <shinya@gitlab.com> | 2019-01-02 15:39:45 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2019-01-04 19:36:45 +0900 |
commit | 0d9b801a5ff9d98948954da61569668a57dde99a (patch) | |
tree | dc2851716075f28da4de4c68b1d50ddd57b58414 /app/workers/update_head_pipeline_for_merge_request_worker.rb | |
parent | c50b0e58feb208fd26129548ad086c3ef50df604 (diff) | |
download | gitlab-ce-0d9b801a5ff9d98948954da61569668a57dde99a.tar.gz |
Refactor the logic of updating head pipelines
Sort out some logic
Diffstat (limited to 'app/workers/update_head_pipeline_for_merge_request_worker.rb')
-rw-r--r-- | app/workers/update_head_pipeline_for_merge_request_worker.rb | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/app/workers/update_head_pipeline_for_merge_request_worker.rb b/app/workers/update_head_pipeline_for_merge_request_worker.rb index e8494ffa002..4ec2b9d8fbe 100644 --- a/app/workers/update_head_pipeline_for_merge_request_worker.rb +++ b/app/workers/update_head_pipeline_for_merge_request_worker.rb @@ -7,25 +7,8 @@ class UpdateHeadPipelineForMergeRequestWorker queue_namespace :pipeline_processing def perform(merge_request_id) - merge_request = MergeRequest.find(merge_request_id) - - sha = merge_request.diff_head_sha - pipeline = merge_request.all_pipelines(shas: sha).first - - return unless pipeline && pipeline.latest? - - if merge_request.diff_head_sha != pipeline.sha - log_error_message_for(merge_request) - - return + MergeRequest.find_by_id(merge_request_id).try do |merge_request| + merge_request.update_head_pipeline end - - merge_request.update_attribute(:head_pipeline_id, pipeline.id) - end - - def log_error_message_for(merge_request) - Rails.logger.error( - "Outdated head pipeline for active merge request: id=#{merge_request.id}, source_branch=#{merge_request.source_branch}, diff_head_sha=#{merge_request.diff_head_sha}" - ) end end |