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:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 10:33:21 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 10:33:21 +0300
commit36a59d088eca61b834191dacea009677a96c052f (patch)
treee4f33972dab5d8ef79e3944a9f403035fceea43f /app/serializers
parenta1761f15ec2cae7c7f7bbda39a75494add0dfd6f (diff)
Add latest changes from gitlab-org/gitlab@15-0-stable-eev15.0.0-rc42
Diffstat (limited to 'app/serializers')
-rw-r--r--app/serializers/award_emoji_entity.rb1
-rw-r--r--app/serializers/build_details_entity.rb8
-rw-r--r--app/serializers/ci/job_entity.rb1
-rw-r--r--app/serializers/cluster_entity.rb10
-rw-r--r--app/serializers/environment_entity.rb3
-rw-r--r--app/serializers/environment_serializer.rb5
-rw-r--r--app/serializers/issue_board_entity.rb2
-rw-r--r--app/serializers/issue_entity.rb2
-rw-r--r--app/serializers/issue_sidebar_basic_entity.rb2
-rw-r--r--app/serializers/linked_issue_entity.rb2
-rw-r--r--app/serializers/merge_request_user_entity.rb2
-rw-r--r--app/serializers/merge_request_widget_entity.rb2
-rw-r--r--app/serializers/release_entity.rb9
13 files changed, 36 insertions, 13 deletions
diff --git a/app/serializers/award_emoji_entity.rb b/app/serializers/award_emoji_entity.rb
index 212931a2fa9..6ca782d8203 100644
--- a/app/serializers/award_emoji_entity.rb
+++ b/app/serializers/award_emoji_entity.rb
@@ -3,4 +3,5 @@
class AwardEmojiEntity < Grape::Entity
expose :name
expose :user, using: API::Entities::UserSafe
+ expose :url
end
diff --git a/app/serializers/build_details_entity.rb b/app/serializers/build_details_entity.rb
index 9fd35faf0b7..5f72259f34a 100644
--- a/app/serializers/build_details_entity.rb
+++ b/app/serializers/build_details_entity.rb
@@ -148,12 +148,14 @@ class BuildDetailsEntity < Ci::JobEntity
end
def failure_message
- _("This job depends on other jobs with expired/erased artifacts: %{invalid_dependencies}") %
- { invalid_dependencies: invalid_dependencies }
+ # We do not return the invalid_dependencies for all scenarios see https://gitlab.com/gitlab-org/gitlab/-/issues/287772#note_914406387
+ punctuation = invalid_dependencies.empty? ? '.' : ': '
+ _("This job could not start because it could not retrieve the needed artifacts%{punctuation}%{invalid_dependencies}") %
+ { invalid_dependencies: invalid_dependencies, punctuation: punctuation }
end
def help_message(docs_url)
- html_escape(_("Please refer to %{docs_url}")) % { docs_url: "<a href=\"#{docs_url}\">#{html_escape(docs_url)}</a>".html_safe }
+ html_escape(_("<a href=\"#{docs_url}\">Learn more.</a>".html_safe))
end
end
diff --git a/app/serializers/ci/job_entity.rb b/app/serializers/ci/job_entity.rb
index fca3dec74d4..b6b11e54a16 100644
--- a/app/serializers/ci/job_entity.rb
+++ b/app/serializers/ci/job_entity.rb
@@ -8,6 +8,7 @@ module Ci
expose :name
expose :started?, as: :started
+ expose :started_at, if: -> (job) { job.started? }
expose :complete?, as: :complete
expose :archived?, as: :archived
diff --git a/app/serializers/cluster_entity.rb b/app/serializers/cluster_entity.rb
index e2d24e74b29..df72a994143 100644
--- a/app/serializers/cluster_entity.rb
+++ b/app/serializers/cluster_entity.rb
@@ -19,7 +19,7 @@ class ClusterEntity < Grape::Entity
Clusters::ClusterPresenter.new(cluster).show_path # rubocop: disable CodeReuse/Presenter
end
- expose :gitlab_managed_apps_logs_path do |cluster|
+ expose :gitlab_managed_apps_logs_path, if: -> (*) { logging_enabled? } do |cluster|
Clusters::ClusterPresenter.new(cluster, current_user: request.current_user).gitlab_managed_apps_logs_path # rubocop: disable CodeReuse/Presenter
end
@@ -27,7 +27,13 @@ class ClusterEntity < Grape::Entity
Clusters::KubernetesErrorEntity.new(cluster)
end
- expose :enable_advanced_logs_querying do |cluster|
+ expose :enable_advanced_logs_querying, if: -> (*) { logging_enabled? } do |cluster|
cluster.elastic_stack_available?
end
+
+ private
+
+ def logging_enabled?
+ Feature.enabled?(:monitor_logging, object.project)
+ end
end
diff --git a/app/serializers/environment_entity.rb b/app/serializers/environment_entity.rb
index 634be365a9d..ac99463bd64 100644
--- a/app/serializers/environment_entity.rb
+++ b/app/serializers/environment_entity.rb
@@ -103,7 +103,8 @@ class EnvironmentEntity < Grape::Entity
end
def can_read_pod_logs?
- can?(current_user, :read_pod_logs, environment.project)
+ Feature.enabled?(:monitor_logging, environment.project) &&
+ can?(current_user, :read_pod_logs, environment.project)
end
def can_read_deploy_board?
diff --git a/app/serializers/environment_serializer.rb b/app/serializers/environment_serializer.rb
index a8645c8670d..b13140efea7 100644
--- a/app/serializers/environment_serializer.rb
+++ b/app/serializers/environment_serializer.rb
@@ -81,7 +81,10 @@ class EnvironmentSerializer < BaseSerializer
{
user: [],
cluster: [],
- project: [],
+ project: {
+ route: [],
+ namespace: :route
+ },
deployable: {
user: [],
metadata: [],
diff --git a/app/serializers/issue_board_entity.rb b/app/serializers/issue_board_entity.rb
index 4b9c48f3f7c..bcad28d6aad 100644
--- a/app/serializers/issue_board_entity.rb
+++ b/app/serializers/issue_board_entity.rb
@@ -37,7 +37,7 @@ class IssueBoardEntity < Grape::Entity
end
expose :real_path, if: -> (issue) { issue.project } do |issue|
- project_issue_path(issue.project, issue)
+ Gitlab::UrlBuilder.build(issue, only_path: true)
end
expose :issue_sidebar_endpoint, if: -> (issue) { issue.project } do |issue|
diff --git a/app/serializers/issue_entity.rb b/app/serializers/issue_entity.rb
index fbcfcf84d9b..852a2e62b7d 100644
--- a/app/serializers/issue_entity.rb
+++ b/app/serializers/issue_entity.rb
@@ -31,7 +31,7 @@ class IssueEntity < IssuableEntity
end
expose :web_url do |issue|
- project_issue_path(issue.project, issue)
+ Gitlab::UrlBuilder.build(issue, only_path: true)
end
expose :current_user do
diff --git a/app/serializers/issue_sidebar_basic_entity.rb b/app/serializers/issue_sidebar_basic_entity.rb
index 7222b5df425..2450c6a4d85 100644
--- a/app/serializers/issue_sidebar_basic_entity.rb
+++ b/app/serializers/issue_sidebar_basic_entity.rb
@@ -12,7 +12,7 @@ class IssueSidebarBasicEntity < IssuableSidebarBasicEntity
end
expose :show_crm_contacts do |issuable|
- current_user&.can?(:read_crm_contact, issuable.project.root_ancestor) &&
+ current_user&.can?(:read_crm_contacts, issuable) &&
CustomerRelations::Contact.exists_for_group?(issuable.project.root_ancestor)
end
end
diff --git a/app/serializers/linked_issue_entity.rb b/app/serializers/linked_issue_entity.rb
index 6ae3f4044db..769e3ed7310 100644
--- a/app/serializers/linked_issue_entity.rb
+++ b/app/serializers/linked_issue_entity.rb
@@ -18,7 +18,7 @@ class LinkedIssueEntity < Grape::Entity
end
expose :path do |link|
- project_issue_path(link.project, link.iid)
+ Gitlab::UrlBuilder.build(link, only_path: true)
end
expose :relation_path
diff --git a/app/serializers/merge_request_user_entity.rb b/app/serializers/merge_request_user_entity.rb
index 97912656bbb..12c573d1a13 100644
--- a/app/serializers/merge_request_user_entity.rb
+++ b/app/serializers/merge_request_user_entity.rb
@@ -20,7 +20,7 @@ class MergeRequestUserEntity < ::API::Entities::UserBasic
find_reviewer_or_assignee(user, options)&.reviewed?
end
- expose :attention_requested, if: satisfies(:present?, :allows_reviewers?, :attention_requested_enabled?) do |user, options|
+ expose :attention_requested, if: ->(_, options) { options[:merge_request].present? && options[:merge_request].allows_reviewers? && request.current_user&.mr_attention_requests_enabled? } do |user, options|
find_reviewer_or_assignee(user, options)&.attention_requested?
end
diff --git a/app/serializers/merge_request_widget_entity.rb b/app/serializers/merge_request_widget_entity.rb
index 21ab20747d0..5bf91ed0a51 100644
--- a/app/serializers/merge_request_widget_entity.rb
+++ b/app/serializers/merge_request_widget_entity.rb
@@ -143,7 +143,7 @@ class MergeRequestWidgetEntity < Grape::Entity
end
expose :security_reports_docs_path do |merge_request|
- help_page_path('user/application_security/index.md', anchor: 'viewing-security-scan-information-in-merge-requests')
+ help_page_path('user/application_security/index.md', anchor: 'view-security-scan-information-in-merge-requests')
end
expose :enabled_reports do |merge_request|
diff --git a/app/serializers/release_entity.rb b/app/serializers/release_entity.rb
index 6777b0f9780..5c3d06b82d3 100644
--- a/app/serializers/release_entity.rb
+++ b/app/serializers/release_entity.rb
@@ -1,6 +1,15 @@
# frozen_string_literal: true
+# TODO: consider removing this entity after https://gitlab.com/gitlab-org/gitlab/-/issues/360631
class ReleaseEntity < Grape::Entity
expose :id
expose :tag # see https://gitlab.com/gitlab-org/gitlab/-/issues/36338
+ expose :name
+ expose :description
+ expose :project_id
+ expose :author_id
+
+ expose :created_at
+ expose :updated_at
+ expose :released_at
end