Commit fa1105b1 authored by Kamil Trzcinski's avatar Kamil Trzcinski

Fix broken pipeline rendering [ci skip]

parent 4e06818d
......@@ -21,8 +21,6 @@ module Ci
after_create :keep_around_commits, unless: :importing?
delegate :stages, to: :statuses
state_machine :status, initial: :created do
event :enqueue do
transition created: :pending
......@@ -102,15 +100,19 @@ module Ci
where.not(duration: nil).sum(:duration)
end
def stages
def stages_query
statuses.group('stage').select(:stage)
.order('max(stage_idx)')
end
def stages
self.stages_query.pluck(:stage)
end
def stages_with_statuses
status_sql = statuses.latest.where('stage=sg.stage').status_sql
stages_with_statuses = CommitStatus.from(self.stages, :sg).
stages_with_statuses = CommitStatus.from(self.stages_query, :sg).
pluck('sg.stage', status_sql)
stages_with_statuses.map do |stage|
......
......@@ -43,16 +43,13 @@
- else
Cant find HEAD commit for this branch
- stages_status = pipeline.statuses.latest.stages_status
%td.stage-cell
- pipeline.statuses.latest.stages_status.each do |stage|
- name = stage.first
- status = stage.last
- tooltip = "#{name.titleize}: #{status || 'not found'}"
- if status
- pipeline.stages_with_statuses.each do |stage|
- if stage.status
- tooltip = "#{stage.name.titleize}: #{stage.status || 'not found'}"
.stage-container
= link_to namespace_project_pipeline_path(pipeline.project.namespace, pipeline.project, pipeline.id, anchor: stage), class: "has-tooltip ci-status-icon-#{status}", title: tooltip do
= ci_icon_for_status(status)
= link_to namespace_project_pipeline_path(pipeline.project.namespace, pipeline.project, pipeline.id, anchor: stage.name), class: "has-tooltip ci-status-icon-#{stage.status}", title: tooltip do
= ci_icon_for_status(stage.status)
%td
- if pipeline.duration
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment