diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-02-14 09:08:43 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-02-14 09:08:43 +0000 |
commit | 733befe96ad19f5a02e442c4a9cc8059d3aabbda (patch) | |
tree | dcabd344df040e536a242edc4e3121fb3efca142 /app/serializers | |
parent | 10213bf3b26c3c21f7683471d35d1cd052c41e9c (diff) | |
download | gitlab-ce-733befe96ad19f5a02e442c4a9cc8059d3aabbda.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/serializers')
-rw-r--r-- | app/serializers/build_details_entity.rb | 6 | ||||
-rw-r--r-- | app/serializers/cluster_basic_entity.rb | 10 | ||||
-rw-r--r-- | app/serializers/deployment_cluster_entity.rb | 20 | ||||
-rw-r--r-- | app/serializers/deployment_entity.rb | 6 |
4 files changed, 31 insertions, 11 deletions
diff --git a/app/serializers/build_details_entity.rb b/app/serializers/build_details_entity.rb index 0ef71ff8af5..fe6afa4ff6f 100644 --- a/app/serializers/build_details_entity.rb +++ b/app/serializers/build_details_entity.rb @@ -22,6 +22,12 @@ class BuildDetailsEntity < JobEntity end end + expose :deployment_cluster, if: -> (build) { build&.deployment&.cluster } do |build, options| + # Until data is copied over from deployments.cluster_id, this entity must represent Deployment instead of DeploymentCluster + # https://gitlab.com/gitlab-org/gitlab/issues/202628 + DeploymentClusterEntity.represent(build.deployment, options) + end + expose :artifact, if: -> (*) { can?(current_user, :read_build, build) } do expose :download_path, if: -> (*) { build.artifacts? } do |build| download_project_job_artifacts_path(project, build) diff --git a/app/serializers/cluster_basic_entity.rb b/app/serializers/cluster_basic_entity.rb deleted file mode 100644 index d104f2c8bbd..00000000000 --- a/app/serializers/cluster_basic_entity.rb +++ /dev/null @@ -1,10 +0,0 @@ -# frozen_string_literal: true - -class ClusterBasicEntity < Grape::Entity - include RequestAwareEntity - - expose :name - expose :path, if: -> (cluster) { can?(request.current_user, :read_cluster, cluster) } do |cluster| - cluster.present(current_user: request.current_user).show_path - end -end diff --git a/app/serializers/deployment_cluster_entity.rb b/app/serializers/deployment_cluster_entity.rb new file mode 100644 index 00000000000..98736472b62 --- /dev/null +++ b/app/serializers/deployment_cluster_entity.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +class DeploymentClusterEntity < Grape::Entity + include RequestAwareEntity + + # Until data is copied over from deployments.cluster_id, this entity must represent Deployment instead of DeploymentCluster + # https://gitlab.com/gitlab-org/gitlab/issues/202628 + + expose :name do |deployment| + deployment.cluster.name + end + + expose :path, if: -> (deployment) { can?(request.current_user, :read_cluster, deployment.cluster) } do |deployment| + deployment.cluster.present(current_user: request.current_user).show_path + end + + expose :kubernetes_namespace, if: -> (deployment) { can?(request.current_user, :read_cluster, deployment.cluster) } do |deployment| + deployment.kubernetes_namespace + end +end diff --git a/app/serializers/deployment_entity.rb b/app/serializers/deployment_entity.rb index 94773eeebd0..dc7c4654208 100644 --- a/app/serializers/deployment_entity.rb +++ b/app/serializers/deployment_entity.rb @@ -41,7 +41,11 @@ class DeploymentEntity < Grape::Entity JobEntity.represent(deployment.playable_build, options.merge(only: [:play_path, :retry_path])) end - expose :cluster, using: ClusterBasicEntity + expose :cluster do |deployment, options| + # Until data is copied over from deployments.cluster_id, this entity must represent Deployment instead of DeploymentCluster + # https://gitlab.com/gitlab-org/gitlab/issues/202628 + DeploymentClusterEntity.represent(deployment, options) unless deployment.cluster.nil? + end private |