summaryrefslogtreecommitdiff
path: root/app/serializers/commit_entity.rb
diff options
context:
space:
mode:
authorPaul Slaughter <pslaughter@gitlab.com>2018-10-03 04:08:00 -0500
committerPaul Slaughter <pslaughter@gitlab.com>2018-10-03 13:18:21 -0500
commitbecb86ea4e8032788b151caac004b2635b57c6a4 (patch)
treefbad0bec9e69fb82d6a72967ccae2812bbd25eb9 /app/serializers/commit_entity.rb
parent5a286eb7a3a0c395d35c722ce6a067aca47473f2 (diff)
downloadgitlab-ce-becb86ea4e8032788b151caac004b2635b57c6a4.tar.gz
Add pipeline status to diffs/commit_item49329-mr-show-commit-details
**Notes:** - Also exposes commit.pipeline_status_path in diffs.json
Diffstat (limited to 'app/serializers/commit_entity.rb')
-rw-r--r--app/serializers/commit_entity.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/app/serializers/commit_entity.rb b/app/serializers/commit_entity.rb
index 90406701bbb..a94e32478ce 100644
--- a/app/serializers/commit_entity.rb
+++ b/app/serializers/commit_entity.rb
@@ -30,6 +30,17 @@ class CommitEntity < API::Entities::Commit
render('projects/commit/_signature', signature: commit.signature) if commit.has_signature?
end
+ expose :pipeline_status_path, if: { type: :full } do |commit, options|
+ pipeline_ref = options[:pipeline_ref]
+ pipeline_project = options[:pipeline_project] || commit.project
+ next unless pipeline_ref && pipeline_project
+
+ status = commit.status_for_project(pipeline_ref, pipeline_project)
+ next unless status
+
+ pipelines_project_commit_path(pipeline_project, commit.id, ref: pipeline_ref)
+ end
+
def render(*args)
return unless request.respond_to?(:render) && request.render.respond_to?(:call)