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:
Diffstat (limited to 'app/serializers/merge_request_poll_widget_entity.rb')
-rw-r--r--app/serializers/merge_request_poll_widget_entity.rb16
1 files changed, 14 insertions, 2 deletions
diff --git a/app/serializers/merge_request_poll_widget_entity.rb b/app/serializers/merge_request_poll_widget_entity.rb
index a365ebc29c9..99d6211b487 100644
--- a/app/serializers/merge_request_poll_widget_entity.rb
+++ b/app/serializers/merge_request_poll_widget_entity.rb
@@ -19,9 +19,21 @@ class MergeRequestPollWidgetEntity < Grape::Entity
# User entities
expose :merge_user, using: UserEntity
- expose :actual_head_pipeline, with: PipelineDetailsEntity, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? }
+ expose :actual_head_pipeline, as: :pipeline, if: -> (mr, _) { presenter(mr).can_read_pipeline? } do |merge_request, options|
+ if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project, default_enabled: true)
+ MergeRequests::PipelineEntity.represent(merge_request.actual_head_pipeline, options)
+ else
+ PipelineDetailsEntity.represent(merge_request.actual_head_pipeline, options)
+ end
+ end
- expose :merge_pipeline, with: PipelineDetailsEntity, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)}
+ expose :merge_pipeline, if: ->(mr, _) { mr.merged? && can?(request.current_user, :read_pipeline, mr.target_project)} do |merge_request, options|
+ if Feature.enabled?(:merge_request_short_pipeline_serializer, merge_request.project, default_enabled: true)
+ MergeRequests::PipelineEntity.represent(merge_request.merge_pipeline, options)
+ else
+ PipelineDetailsEntity.represent(merge_request.merge_pipeline, options)
+ end
+ end
expose :default_merge_commit_message