<%# Summary %>
+<div class="pull-right" style="padding-left: 1em">
+ Current state: <span class="badge badge-info" data-pipeline-state="<%= @object.state %>">
+ <% if @object.state == "RunningOnServer" %>
+ Active
+ <% else %>
+ <%= @object.state %>
+ <% end %>
+ </span>
+</div>
+
+<% pipeline_jobs = render_pipeline_jobs %>
+<% job_uuids = pipeline_jobs.map { |j| j[:job].andand[:uuid] }.compact %>
+
<% if @object.state == 'Paused' %>
<p>
This pipeline is paused. Jobs that are
</p>
<% end %>
-<% tasks = JobTask.filter([['job_uuid', 'in', render_pipeline_jobs.map { |j| j[:job].andand[:uuid] }]]).results %>
-<% runningtime = determine_wallclock_runtime(render_pipeline_jobs.map {|j| j[:job]}) %>
+<% tasks = JobTask.filter([['job_uuid', 'in', job_uuids]]).results %>
+<% runningtime = determine_wallclock_runtime(pipeline_jobs.map {|j| j[:job]}.compact) %>
<p>
<% if @object.started_at %>
This pipeline started at <%= render_localized_date(@object.started_at) %>.
- It
+ It
<% if @object.state == 'Complete' %>
completed in
<% elsif @object.state == 'Failed' %>
else
Time.now - @object.started_at
end %>
-
- <%= if walltime > runningtime
- render_runtime(walltime, true, false)
- else
- render_runtime(runningtime, true, false)
+
+ <%= if walltime > runningtime
+ render_runtime(walltime, true, false)
+ else
+ render_runtime(runningtime, true, false)
end %><% if @object.finished_at %> at <%= render_localized_date(@object.finished_at) %><% end %>.
<% else %>
This pipeline is <%= if @object.state.start_with? 'Running' then 'active' else @object.state.downcase end %>.
<%# Components %>
-<% render_pipeline_jobs.each_with_index do |pj, i| %>
+<% pipeline_jobs.each_with_index do |pj, i| %>
<%= render partial: 'running_component', locals: {tasks: tasks, pj: pj, i: i, expanded: false} %>
<% end %>