diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-19 18:44:42 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-05-19 18:44:42 +0300 |
commit | 4555e1b21c365ed8303ffb7a3325d773c9b8bf31 (patch) | |
tree | 5423a1c7516cffe36384133ade12572cf709398d /app/serializers | |
parent | e570267f2f6b326480d284e0164a6464ba4081bc (diff) |
Add latest changes from gitlab-org/gitlab@13-12-stable-eev13.12.0-rc42
Diffstat (limited to 'app/serializers')
47 files changed, 243 insertions, 51 deletions
diff --git a/app/serializers/admin/user_entity.rb b/app/serializers/admin/user_entity.rb index a5cf40a50b9..8fab1fa3a3e 100644 --- a/app/serializers/admin/user_entity.rb +++ b/app/serializers/admin/user_entity.rb @@ -31,4 +31,4 @@ module Admin end end -Admin::UserEntity.prepend_if_ee('EE::Admin::UserEntity') +Admin::UserEntity.prepend_mod_with('Admin::UserEntity') diff --git a/app/serializers/analytics/cycle_analytics/configuration_entity.rb b/app/serializers/analytics/cycle_analytics/configuration_entity.rb new file mode 100644 index 00000000000..45ea7c92758 --- /dev/null +++ b/app/serializers/analytics/cycle_analytics/configuration_entity.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class ConfigurationEntity < Grape::Entity + include RequestAwareEntity + + expose :events, using: Analytics::CycleAnalytics::EventEntity + expose :stages, using: Analytics::CycleAnalytics::StageEntity + + private + + def events + (stage_events.events - stage_events.internal_events).sort_by(&:name) + end + + def stage_events + Gitlab::Analytics::CycleAnalytics::StageEvents + end + end + end +end diff --git a/app/serializers/analytics/cycle_analytics/event_entity.rb b/app/serializers/analytics/cycle_analytics/event_entity.rb new file mode 100644 index 00000000000..b9abf722c8d --- /dev/null +++ b/app/serializers/analytics/cycle_analytics/event_entity.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class EventEntity < Grape::Entity + expose :name + expose :identifier + expose :type + expose :can_be_start_event?, as: :can_be_start_event + expose :allowed_end_events + + private + + def type + object.label_based? ? 'label' : 'simple' + end + + def can_be_start_event? + pairing_rules.has_key?(object) + end + + def allowed_end_events + pairing_rules.fetch(object, []).map do |event| + event.identifier unless stage_events.internal_events.include?(event) + end.compact + end + + def pairing_rules + stage_events.pairing_rules + end + + def stage_events + Gitlab::Analytics::CycleAnalytics::StageEvents + end + end + end +end diff --git a/app/serializers/analytics/cycle_analytics/stage_entity.rb b/app/serializers/analytics/cycle_analytics/stage_entity.rb new file mode 100644 index 00000000000..b24148802d0 --- /dev/null +++ b/app/serializers/analytics/cycle_analytics/stage_entity.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class StageEntity < Grape::Entity + expose :title + expose :hidden + expose :legend + expose :description + expose :id + expose :custom + expose :start_event_identifier, if: -> (s) { s.custom? } + expose :end_event_identifier, if: -> (s) { s.custom? } + expose :start_event_label, using: LabelEntity, if: -> (s) { s.start_event_label_based? } + expose :end_event_label, using: LabelEntity, if: -> (s) { s.end_event_label_based? } + expose :start_event_html_description + expose :end_event_html_description + + def id + object.id || object.name + end + + def start_event_html_description + html_description(object.start_event) + end + + def end_event_html_description + html_description(object.end_event) + end + + private + + def html_description(event) + Banzai::Renderer.render(event.markdown_description, { group: object.group, project: nil }) + end + end + end +end diff --git a/app/serializers/analytics/cycle_analytics/value_stream_entity.rb b/app/serializers/analytics/cycle_analytics/value_stream_entity.rb new file mode 100644 index 00000000000..1943efcc63d --- /dev/null +++ b/app/serializers/analytics/cycle_analytics/value_stream_entity.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class ValueStreamEntity < Grape::Entity + expose :name + expose :id + expose :is_custom do |object| + object.custom? + end + expose :stages, using: Analytics::CycleAnalytics::StageEntity + + private + + def id + object.id || object.name # use the name `default` if the record is not persisted + end + + def stages + object.stages.map { |s| ::Analytics::CycleAnalytics::StagePresenter.new(s) } # rubocop: disable CodeReuse/Presenter + end + end + end +end diff --git a/app/serializers/analytics/cycle_analytics/value_stream_serializer.rb b/app/serializers/analytics/cycle_analytics/value_stream_serializer.rb new file mode 100644 index 00000000000..ffd7aa882e4 --- /dev/null +++ b/app/serializers/analytics/cycle_analytics/value_stream_serializer.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module Analytics + module CycleAnalytics + class ValueStreamSerializer < BaseSerializer + entity ::Analytics::CycleAnalytics::ValueStreamEntity + end + end +end diff --git a/app/serializers/blob_entity.rb b/app/serializers/blob_entity.rb index a54af899ba2..6dde35a9415 100644 --- a/app/serializers/blob_entity.rb +++ b/app/serializers/blob_entity.rb @@ -16,4 +16,4 @@ class BlobEntity < Grape::Entity end end -BlobEntity.prepend_if_ee('EE::BlobEntity') +BlobEntity.prepend_mod_with('BlobEntity') diff --git a/app/serializers/board_simple_entity.rb b/app/serializers/board_simple_entity.rb index a3c16a0b5c7..ab625490966 100644 --- a/app/serializers/board_simple_entity.rb +++ b/app/serializers/board_simple_entity.rb @@ -5,4 +5,4 @@ class BoardSimpleEntity < Grape::Entity expose :name end -BoardSimpleEntity.prepend_if_ee('EE::BoardSimpleEntity') +BoardSimpleEntity.prepend_mod_with('BoardSimpleEntity') diff --git a/app/serializers/build_details_entity.rb b/app/serializers/build_details_entity.rb index 0ddcad4dcb9..6fbd14f523d 100644 --- a/app/serializers/build_details_entity.rb +++ b/app/serializers/build_details_entity.rb @@ -155,4 +155,4 @@ class BuildDetailsEntity < JobEntity end end -BuildDetailsEntity.prepend_if_ee('::EE::BuildDetailEntity') +BuildDetailsEntity.prepend_mod_with('BuildDetailEntity') diff --git a/app/serializers/ci/downloadable_artifact_entity.rb b/app/serializers/ci/downloadable_artifact_entity.rb new file mode 100644 index 00000000000..1f3885f0715 --- /dev/null +++ b/app/serializers/ci/downloadable_artifact_entity.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +module Ci + class DownloadableArtifactEntity < Grape::Entity + include RequestAwareEntity + + expose :artifacts do |pipeline, options| + artifacts = pipeline.downloadable_artifacts + + if Feature.enabled?(:non_public_artifacts) + artifacts = artifacts.select { |artifact| can?(request.current_user, :read_job_artifacts, artifact.job) } + end + + BuildArtifactEntity.represent(artifacts, options.merge(project: pipeline.project)) + end + end +end diff --git a/app/serializers/ci/downloadable_artifact_serializer.rb b/app/serializers/ci/downloadable_artifact_serializer.rb new file mode 100644 index 00000000000..fc4c9fa558e --- /dev/null +++ b/app/serializers/ci/downloadable_artifact_serializer.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module Ci + class DownloadableArtifactSerializer < BaseSerializer + entity DownloadableArtifactEntity + end +end diff --git a/app/serializers/ci/pipeline_entity.rb b/app/serializers/ci/pipeline_entity.rb index 743643a978f..fa0e904fbde 100644 --- a/app/serializers/ci/pipeline_entity.rb +++ b/app/serializers/ci/pipeline_entity.rb @@ -121,4 +121,4 @@ class Ci::PipelineEntity < Grape::Entity end end -Ci::PipelineEntity.prepend_if_ee('EE::Ci::PipelineEntity') +Ci::PipelineEntity.prepend_mod_with('Ci::PipelineEntity') diff --git a/app/serializers/cluster_entity.rb b/app/serializers/cluster_entity.rb index b904666971e..ba42e14be22 100644 --- a/app/serializers/cluster_entity.rb +++ b/app/serializers/cluster_entity.rb @@ -28,6 +28,6 @@ class ClusterEntity < Grape::Entity end expose :enable_advanced_logs_querying do |cluster| - cluster.application_elastic_stack_available? + cluster.elastic_stack_available? end end diff --git a/app/serializers/context_commits_diff_entity.rb b/app/serializers/context_commits_diff_entity.rb new file mode 100644 index 00000000000..89ebf6a4815 --- /dev/null +++ b/app/serializers/context_commits_diff_entity.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +class ContextCommitsDiffEntity < Grape::Entity + include Gitlab::Routing + + expose :commits_count + + expose :showing_context_commits_diff do |_, options| + options[:only_context_commits] + end + + expose :diffs_path do |diff| + merge_request = diff.merge_request + project = merge_request.target_project + + next unless project + + diffs_project_merge_request_path(project, merge_request, only_context_commits: true) + end +end diff --git a/app/serializers/current_board_entity.rb b/app/serializers/current_board_entity.rb index 08f31bc698f..530f7f5dea3 100644 --- a/app/serializers/current_board_entity.rb +++ b/app/serializers/current_board_entity.rb @@ -7,4 +7,4 @@ class CurrentBoardEntity < Grape::Entity expose :hide_closed_list end -CurrentBoardEntity.prepend_if_ee('EE::CurrentBoardEntity') +CurrentBoardEntity.prepend_mod_with('CurrentBoardEntity') diff --git a/app/serializers/deployment_entity.rb b/app/serializers/deployment_entity.rb index a37011d0100..08a939e86c5 100644 --- a/app/serializers/deployment_entity.rb +++ b/app/serializers/deployment_entity.rb @@ -38,7 +38,7 @@ class DeploymentEntity < Grape::Entity expose :commit, using: CommitEntity, if: -> (*) { include_details? } expose :manual_actions, using: JobEntity, if: -> (*) { include_details? && can_create_deployment? } expose :scheduled_actions, using: JobEntity, if: -> (*) { include_details? && can_create_deployment? } - expose :playable_build, expose_nil: false, if: -> (*) { include_details? && can_create_deployment? } do |deployment, options| + expose :playable_build, if: -> (deployment) { include_details? && can_create_deployment? && deployment.playable_build } do |deployment, options| JobEntity.represent(deployment.playable_build, options.merge(only: [:play_path, :retry_path])) end diff --git a/app/serializers/diffs_entity.rb b/app/serializers/diffs_entity.rb index 4bc6644a5cb..64f7f8bb5eb 100644 --- a/app/serializers/diffs_entity.rb +++ b/app/serializers/diffs_entity.rb @@ -84,6 +84,15 @@ class DiffsEntity < Grape::Entity project_blob_path(merge_request.project, merge_request.diff_head_sha) end + expose :context_commits_diff, if: -> (_) { merge_request&.project&.context_commits_enabled? } do |diffs, options| + next unless merge_request.context_commits_diff.commits_count > 0 + + ContextCommitsDiffEntity.represent( + merge_request.context_commits_diff, + options + ) + end + def merge_request options[:merge_request] end diff --git a/app/serializers/discussion_serializer.rb b/app/serializers/discussion_serializer.rb index 7e7148b046e..8bae5687a64 100644 --- a/app/serializers/discussion_serializer.rb +++ b/app/serializers/discussion_serializer.rb @@ -18,4 +18,4 @@ class DiscussionSerializer < BaseSerializer end end -DiscussionSerializer.prepend_if_ee('EE::DiscussionSerializer') +DiscussionSerializer.prepend_mod_with('DiscussionSerializer') diff --git a/app/serializers/environment_entity.rb b/app/serializers/environment_entity.rb index 66ca2382901..6105b52fbda 100644 --- a/app/serializers/environment_entity.rb +++ b/app/serializers/environment_entity.rb @@ -21,7 +21,7 @@ class EnvironmentEntity < Grape::Entity expose :stop_action_available?, as: :has_stop_action expose :rollout_status, if: -> (*) { can_read_deploy_board? }, using: RolloutStatusEntity - expose :upcoming_deployment, expose_nil: false do |environment, ops| + expose :upcoming_deployment, if: -> (environment) { environment.upcoming_deployment } do |environment, ops| DeploymentEntity.represent(environment.upcoming_deployment, ops.merge(except: UNNECESSARY_ENTRIES_FOR_UPCOMING_DEPLOYMENT)) end @@ -122,4 +122,4 @@ class EnvironmentEntity < Grape::Entity end end -EnvironmentEntity.prepend_if_ee('::EE::EnvironmentEntity') +EnvironmentEntity.prepend_mod_with('EnvironmentEntity') diff --git a/app/serializers/environment_serializer.rb b/app/serializers/environment_serializer.rb index 2bb9a7e7254..2fb1ad52135 100644 --- a/app/serializers/environment_serializer.rb +++ b/app/serializers/environment_serializer.rb @@ -23,6 +23,8 @@ class EnvironmentSerializer < BaseSerializer latest: super(item.latest, opts) } end else + resource = @paginator.paginate(resource) if paginated? + super(batch_load(resource), opts) end end @@ -52,7 +54,7 @@ class EnvironmentSerializer < BaseSerializer def batch_load(resource) resource = resource.preload(environment_associations) - resource.all.tap do |environments| + resource.all.to_a.tap do |environments| environments.each do |environment| # Batch loading the commits of the deployments environment.last_deployment&.commit&.try(:lazy_author) @@ -96,4 +98,4 @@ class EnvironmentSerializer < BaseSerializer # rubocop: enable CodeReuse/ActiveRecord end -EnvironmentSerializer.prepend_if_ee('EE::EnvironmentSerializer') +EnvironmentSerializer.prepend_mod_with('EnvironmentSerializer') diff --git a/app/serializers/evidences/release_entity.rb b/app/serializers/evidences/release_entity.rb index dfc4f52de07..3b16347d7c0 100644 --- a/app/serializers/evidences/release_entity.rb +++ b/app/serializers/evidences/release_entity.rb @@ -12,4 +12,4 @@ module Evidences end end -Evidences::ReleaseEntity.prepend_if_ee('EE::Evidences::ReleaseEntity') +Evidences::ReleaseEntity.prepend_mod_with('Evidences::ReleaseEntity') diff --git a/app/serializers/fork_namespace_entity.rb b/app/serializers/fork_namespace_entity.rb index fc238fa3958..fbcdf91a1af 100644 --- a/app/serializers/fork_namespace_entity.rb +++ b/app/serializers/fork_namespace_entity.rb @@ -49,4 +49,4 @@ class ForkNamespaceEntity < Grape::Entity end end -ForkNamespaceEntity.prepend_if_ee('EE::ForkNamespaceEntity') +ForkNamespaceEntity.prepend_mod_with('ForkNamespaceEntity') diff --git a/app/serializers/group_child_entity.rb b/app/serializers/group_child_entity.rb index adbda790dee..619ca0b5f82 100644 --- a/app/serializers/group_child_entity.rb +++ b/app/serializers/group_child_entity.rb @@ -100,4 +100,4 @@ class GroupChildEntity < Grape::Entity end end -GroupChildEntity.prepend_if_ee('EE::GroupChildEntity') +GroupChildEntity.prepend_mod_with('GroupChildEntity') diff --git a/app/serializers/group_issuable_autocomplete_entity.rb b/app/serializers/group_issuable_autocomplete_entity.rb new file mode 100644 index 00000000000..f950a7db785 --- /dev/null +++ b/app/serializers/group_issuable_autocomplete_entity.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +class GroupIssuableAutocompleteEntity < Grape::Entity + expose :iid + expose :title + expose :reference do |issuable, options| + issuable.to_reference(options[:parent_group]) + end +end diff --git a/app/serializers/group_issuable_autocomplete_serializer.rb b/app/serializers/group_issuable_autocomplete_serializer.rb new file mode 100644 index 00000000000..59e9201d405 --- /dev/null +++ b/app/serializers/group_issuable_autocomplete_serializer.rb @@ -0,0 +1,5 @@ +# frozen_string_literal: true + +class GroupIssuableAutocompleteSerializer < BaseSerializer + entity GroupIssuableAutocompleteEntity +end diff --git a/app/serializers/issuable_sidebar_basic_entity.rb b/app/serializers/issuable_sidebar_basic_entity.rb index 4b3d6f21d6d..14e416fb71a 100644 --- a/app/serializers/issuable_sidebar_basic_entity.rb +++ b/app/serializers/issuable_sidebar_basic_entity.rb @@ -118,4 +118,4 @@ class IssuableSidebarBasicEntity < Grape::Entity end end -IssuableSidebarBasicEntity.prepend_if_ee('EE::IssuableSidebarBasicEntity') +IssuableSidebarBasicEntity.prepend_mod_with('IssuableSidebarBasicEntity') diff --git a/app/serializers/issue_board_entity.rb b/app/serializers/issue_board_entity.rb index ea629d9d774..17a36f5fb07 100644 --- a/app/serializers/issue_board_entity.rb +++ b/app/serializers/issue_board_entity.rb @@ -20,7 +20,7 @@ class IssueBoardEntity < Grape::Entity API::Entities::Project.represent issue.project, only: [:id, :path] end - expose :milestone, expose_nil: false do |issue| + expose :milestone, if: -> (issue) { issue.milestone } do |issue| API::Entities::Milestone.represent issue.milestone, only: [:id, :title] end @@ -53,4 +53,4 @@ class IssueBoardEntity < Grape::Entity end end -IssueBoardEntity.prepend_if_ee('EE::IssueBoardEntity') +IssueBoardEntity.prepend_mod_with('IssueBoardEntity') diff --git a/app/serializers/issue_entity.rb b/app/serializers/issue_entity.rb index 647a73495f8..773bbf268eb 100644 --- a/app/serializers/issue_entity.rb +++ b/app/serializers/issue_entity.rb @@ -77,4 +77,4 @@ class IssueEntity < IssuableEntity end end -IssueEntity.prepend_if_ee('::EE::IssueEntity') +IssueEntity.prepend_mod_with('IssueEntity') diff --git a/app/serializers/issue_sidebar_basic_entity.rb b/app/serializers/issue_sidebar_basic_entity.rb index e9e05718af9..f93a42e5f98 100644 --- a/app/serializers/issue_sidebar_basic_entity.rb +++ b/app/serializers/issue_sidebar_basic_entity.rb @@ -6,4 +6,4 @@ class IssueSidebarBasicEntity < IssuableSidebarBasicEntity expose :severity end -IssueSidebarBasicEntity.prepend_if_ee('EE::IssueSidebarBasicEntity') +IssueSidebarBasicEntity.prepend_mod_with('IssueSidebarBasicEntity') diff --git a/app/serializers/issue_sidebar_extras_entity.rb b/app/serializers/issue_sidebar_extras_entity.rb index ea2a49baa41..6fd1045882b 100644 --- a/app/serializers/issue_sidebar_extras_entity.rb +++ b/app/serializers/issue_sidebar_extras_entity.rb @@ -3,4 +3,4 @@ class IssueSidebarExtrasEntity < IssuableSidebarExtrasEntity end -IssueSidebarExtrasEntity.prepend_if_ee('EE::IssueSidebarExtrasEntity') +IssueSidebarExtrasEntity.prepend_mod_with('IssueSidebarExtrasEntity') diff --git a/app/serializers/job_entity.rb b/app/serializers/job_entity.rb index d05b500b140..eb8622edb38 100644 --- a/app/serializers/job_entity.rb +++ b/app/serializers/job_entity.rb @@ -7,6 +7,7 @@ class JobEntity < Grape::Entity expose :name expose :started?, as: :started + expose :complete?, as: :complete expose :archived?, as: :archived # bridge jobs don't have build detail pages diff --git a/app/serializers/member_entity.rb b/app/serializers/member_entity.rb index 6cbdaeea5ea..7559a03bd3b 100644 --- a/app/serializers/member_entity.rb +++ b/app/serializers/member_entity.rb @@ -57,4 +57,4 @@ class MemberEntity < Grape::Entity end end -MemberEntity.prepend_if_ee('EE::MemberEntity') +MemberEntity.prepend_mod_with('MemberEntity') diff --git a/app/serializers/member_user_entity.rb b/app/serializers/member_user_entity.rb index a022966c041..01920fc95bb 100644 --- a/app/serializers/member_user_entity.rb +++ b/app/serializers/member_user_entity.rb @@ -25,4 +25,4 @@ class MemberUserEntity < UserEntity end end -MemberUserEntity.prepend_if_ee('EE::MemberUserEntity') +MemberUserEntity.prepend_mod_with('MemberUserEntity') diff --git a/app/serializers/merge_request_poll_cached_widget_entity.rb b/app/serializers/merge_request_poll_cached_widget_entity.rb index 52f5b975656..6ac43e02f3c 100644 --- a/app/serializers/merge_request_poll_cached_widget_entity.rb +++ b/app/serializers/merge_request_poll_cached_widget_entity.rb @@ -187,4 +187,4 @@ class MergeRequestPollCachedWidgetEntity < IssuableEntity end end -MergeRequestPollCachedWidgetEntity.prepend_if_ee('EE::MergeRequestPollCachedWidgetEntity') +MergeRequestPollCachedWidgetEntity.prepend_mod_with('MergeRequestPollCachedWidgetEntity') diff --git a/app/serializers/merge_request_poll_widget_entity.rb b/app/serializers/merge_request_poll_widget_entity.rb index 97a81d8170f..c00dceadf22 100644 --- a/app/serializers/merge_request_poll_widget_entity.rb +++ b/app/serializers/merge_request_poll_widget_entity.rb @@ -158,4 +158,4 @@ class MergeRequestPollWidgetEntity < Grape::Entity end end -MergeRequestPollWidgetEntity.prepend_if_ee('EE::MergeRequestPollWidgetEntity') +MergeRequestPollWidgetEntity.prepend_mod_with('MergeRequestPollWidgetEntity') diff --git a/app/serializers/merge_request_serializer.rb b/app/serializers/merge_request_serializer.rb index 508a2510dbd..e8fc18e6cf3 100644 --- a/app/serializers/merge_request_serializer.rb +++ b/app/serializers/merge_request_serializer.rb @@ -28,4 +28,4 @@ class MergeRequestSerializer < BaseSerializer end end -MergeRequestSerializer.prepend_if_ee('EE::MergeRequestSerializer') +MergeRequestSerializer.prepend_mod_with('MergeRequestSerializer') diff --git a/app/serializers/merge_request_user_entity.rb b/app/serializers/merge_request_user_entity.rb index a36c4da3e83..66672494bd9 100644 --- a/app/serializers/merge_request_user_entity.rb +++ b/app/serializers/merge_request_user_entity.rb @@ -29,4 +29,4 @@ class MergeRequestUserEntity < ::API::Entities::UserBasic end end -MergeRequestUserEntity.prepend_if_ee('EE::MergeRequestUserEntity') +MergeRequestUserEntity.prepend_mod_with('MergeRequestUserEntity') diff --git a/app/serializers/merge_request_widget_entity.rb b/app/serializers/merge_request_widget_entity.rb index a168c7a8490..ac9970579ed 100644 --- a/app/serializers/merge_request_widget_entity.rb +++ b/app/serializers/merge_request_widget_entity.rb @@ -52,7 +52,7 @@ class MergeRequestWidgetEntity < Grape::Entity end expose :reviewing_and_managing_merge_requests_docs_path do |merge_request| - help_page_path('user/project/merge_requests/reviewing_and_managing_merge_requests.md', anchor: "checkout-merge-requests-locally-through-the-head-ref") + help_page_path('user/project/merge_requests/reviews/index.md', anchor: "checkout-merge-requests-locally-through-the-head-ref") end expose :merge_request_pipelines_docs_path do |merge_request| @@ -176,4 +176,4 @@ class MergeRequestWidgetEntity < Grape::Entity end end -MergeRequestWidgetEntity.prepend_if_ee('EE::MergeRequestWidgetEntity') +MergeRequestWidgetEntity.prepend_mod_with('MergeRequestWidgetEntity') diff --git a/app/serializers/note_entity.rb b/app/serializers/note_entity.rb index d44958bc0c4..8308e954c06 100644 --- a/app/serializers/note_entity.rb +++ b/app/serializers/note_entity.rb @@ -103,4 +103,4 @@ class NoteEntity < API::Entities::Note end end -NoteEntity.prepend_if_ee('EE::NoteEntity') +NoteEntity.prepend_mod_with('NoteEntity') diff --git a/app/serializers/note_user_entity.rb b/app/serializers/note_user_entity.rb index 38e71528f18..c3f14fb0f9e 100644 --- a/app/serializers/note_user_entity.rb +++ b/app/serializers/note_user_entity.rb @@ -4,4 +4,4 @@ class NoteUserEntity < UserEntity unexpose :web_url end -NoteUserEntity.prepend_if_ee('EE::NoteUserEntity') +NoteUserEntity.prepend_mod_with('NoteUserEntity') diff --git a/app/serializers/pipeline_details_entity.rb b/app/serializers/pipeline_details_entity.rb index bb6aa2f78ac..f459e700c03 100644 --- a/app/serializers/pipeline_details_entity.rb +++ b/app/serializers/pipeline_details_entity.rb @@ -8,17 +8,13 @@ class PipelineDetailsEntity < Ci::PipelineEntity end expose :details do - expose :artifacts do |pipeline, options| - rel = pipeline.downloadable_artifacts - - if Feature.enabled?(:non_public_artifacts, type: :development) - rel = rel.select { |artifact| can?(request.current_user, :read_job_artifacts, artifact.job) } - end - - BuildArtifactEntity.represent(rel, options.merge(project: pipeline.project)) - end expose :manual_actions, using: BuildActionEntity expose :scheduled_actions, using: BuildActionEntity + expose :code_quality_build_path, if: -> (_, options) { options[:code_quality_walkthrough] } do |pipeline| + next unless code_quality_build = pipeline.builds.finished.find_by_name('code_quality') + + project_job_path(pipeline.project, code_quality_build, code_quality_walkthrough: true) + end end expose :triggered_by_pipeline, as: :triggered_by, with: TriggeredPipelineEntity diff --git a/app/serializers/pipeline_serializer.rb b/app/serializers/pipeline_serializer.rb index 9a2e29a6ee3..9cfc81e8705 100644 --- a/app/serializers/pipeline_serializer.rb +++ b/app/serializers/pipeline_serializer.rb @@ -49,10 +49,6 @@ class PipelineSerializer < BaseSerializer { manual_actions: :metadata, scheduled_actions: :metadata, - downloadable_artifacts: { - project: [:route, { namespace: :route }], - job: [] - }, failed_builds: %i(project metadata), merge_request: { source_project: [:route, { namespace: :route }], @@ -74,4 +70,4 @@ class PipelineSerializer < BaseSerializer end end -PipelineSerializer.prepend_if_ee('EE::PipelineSerializer') +PipelineSerializer.prepend_mod_with('PipelineSerializer') diff --git a/app/serializers/project_mirror_entity.rb b/app/serializers/project_mirror_entity.rb index daea209deb4..215f659caba 100644 --- a/app/serializers/project_mirror_entity.rb +++ b/app/serializers/project_mirror_entity.rb @@ -8,4 +8,4 @@ class ProjectMirrorEntity < Grape::Entity end end -ProjectMirrorEntity.prepend_if_ee('::EE::ProjectMirrorEntity') +ProjectMirrorEntity.prepend_mod_with('ProjectMirrorEntity') diff --git a/app/serializers/test_case_entity.rb b/app/serializers/test_case_entity.rb index 299160cd1bf..0e64b843fd3 100644 --- a/app/serializers/test_case_entity.rb +++ b/app/serializers/test_case_entity.rb @@ -20,6 +20,6 @@ class TestCaseEntity < Grape::Entity alias_method :test_case, :object def can_read_screenshots? - Feature.enabled?(:junit_pipeline_screenshots_view, options[:project]) && test_case.has_attachment? + test_case.has_attachment? end end diff --git a/app/serializers/user_entity.rb b/app/serializers/user_entity.rb index 9386c06b87a..1a2778cbf30 100644 --- a/app/serializers/user_entity.rb +++ b/app/serializers/user_entity.rb @@ -3,4 +3,4 @@ class UserEntity < API::Entities::UserPath end -UserEntity.prepend_if_ee('EE::UserEntity') +UserEntity.prepend_mod_with('UserEntity') diff --git a/app/serializers/user_preference_entity.rb b/app/serializers/user_preference_entity.rb index 4a5dda1e364..24c5bccdeb9 100644 --- a/app/serializers/user_preference_entity.rb +++ b/app/serializers/user_preference_entity.rb @@ -13,4 +13,4 @@ class UserPreferenceEntity < Grape::Entity end end -UserPreferenceEntity.prepend_if_ee('EE::UserPreferenceEntity') +UserPreferenceEntity.prepend_mod_with('UserPreferenceEntity') diff --git a/app/serializers/user_serializer.rb b/app/serializers/user_serializer.rb index dfbd787298d..5e7dab31e8a 100644 --- a/app/serializers/user_serializer.rb +++ b/app/serializers/user_serializer.rb @@ -21,4 +21,4 @@ class UserSerializer < BaseSerializer end end -UserSerializer.prepend_if_ee('EE::UserSerializer') +UserSerializer.prepend_mod_with('UserSerializer') |