Fix 2.4.2 upgrade notes formatting refs #19330
[arvados.git] / apps / workbench / app / views / pipeline_instances / _running_component.html.erb
index 63a2371a1b3dd2dc398c9b672311bd606d64bdf7..6e8785aa83d1a85710926e88dad69b8d11576d1f 100644 (file)
@@ -1,10 +1,14 @@
+<%# Copyright (C) The Arvados Authors. All rights reserved.
+
+SPDX-License-Identifier: AGPL-3.0 %>
+
 <% current_job = pj[:job] if pj[:job] != {} and pj[:job][:uuid] %>
 <div class="panel panel-default">
   <div class="panel-heading">
     <div class="container-fluid">
       <div class="row-fluid">
         <%# column offset 0 %>
-        <div class="col-md-3" style="word-break:break-all;">
+        <div class="col-md-2" style="word-break:break-all;">
           <h4 class="panel-title">
             <a data-toggle="collapse" href="#collapse<%= i %>">
               <%= pj[:name] %> <span class="caret"></span>
           </h4>
         </div>
 
-        <%# column offset 3 %>
+        <%# column offset 2 %>
         <div class="col-md-2 pipeline-instance-spacing">
           <%= pj[:progress_bar] %>
         </div>
 
-        <% if current_job %>
+        <%# column offset 4 %>
+        <% if not current_job %>
+          <div class="col-md-8"></div>
+        <% else %>
+          <div class="col-md-1">
+            <% if (pipeline_display rescue nil) %>
+              <% if current_job[:state].in? ["Complete", "Failed", "Cancelled"] %>
+                <% if current_job[:log] %>
+                  <% logCollection = Collection.find? current_job[:log] %>
+                  <% if logCollection %>
+                    <%= link_to "Log", job_path(current_job[:uuid], anchor: "Log") %>
+                  <% else %>
+                    Log unavailable
+                  <% end %>
+                <% end %>
+              <% elsif current_job[:state] == "Running" %>
+                <% job = Job.find? current_job[:uuid] %>
+                <% if job %>
+                  <%= link_to "Log", job_path(current_job[:uuid], anchor: "Log") %>
+                <% else %>
+                  Log unavailable
+                <% end %>
+              <% end %>
+            <% end %>
+          </div>
+
           <%# column offset 5 %>
           <% if current_job[:state] != "Queued" %>
           <div class="col-md-3">
             <% if current_job[:started_at] %>
               <% walltime = ((if current_job[:finished_at] then current_job[:finished_at] else Time.now() end) - current_job[:started_at]) %>
-              <% cputime = (current_job[:runtime_constraints].andand[:min_nodes] || 1) *
+              <% cputime = (current_job[:runtime_constraints].andand[:min_nodes] || 1).to_i *
                            ((current_job[:finished_at] || Time.now()) - current_job[:started_at]) %>
               <%= render_runtime(walltime, false) %>
               <% if cputime > 0 %> / <%= render_runtime(cputime, false) %> (<%= (cputime/walltime).round(1) %>&Cross;)<% end %>
             <div class="col-md-6">
               <% queuetime = Time.now - Time.parse(current_job[:created_at].to_s) %>
               Queued for <%= render_runtime(queuetime, false) %>.
-              <% begin %>
-                <% if current_job[:queue_position] == 0 %>
-                  This job is next in the queue to run.
-                <% elsif current_job[:queue_position] == 1 %>
-                  There is 1 job in the queue ahead of this one.
-                <% elsif current_job[:queue_position] %>
-                  There are <%= current_job[:queue_position] %> jobs in the queue ahead of this one.
-                <% end %>
-              <% rescue %>
-              <% end %>
             </div>
           <% elsif current_job[:state] == "Running" %>
             <%# column offset 8 %>
@@ -61,9 +80,9 @@
             <%# column offset 8 %>
             <div class="col-md-4 text-overflow-ellipsis">
               <% if pj[:output_uuid] %>
-                <%= link_to_arvados_object_if_readable(pj[:output_uuid], 'Output data not available', friendly_name: true) %>
+                <%= link_to_arvados_object_if_readable(pj[:output_uuid], "#{pj[:output_uuid]} (Unavailable)", friendly_name: true) %>
               <% elsif current_job[:output] %>
-                <%= link_to_arvados_object_if_readable(current_job[:output], 'Output data not available', link_text: "Output of #{pj[:name]}") %>
+                <%= link_to_arvados_object_if_readable(current_job[:output], "#{current_job[:output]} (Unavailable)", link_text: "Output of #{pj[:name]}") %>
               <% else %>
                 No output.
               <% end %>
           </div>
         </div>
         <div class="row">
-          <div class="col-md-6">
+          <div class="col-md-12">
             <p>script_parameters:</p>
             <pre><%= JSON.pretty_generate(current_component[:script_parameters]) rescue nil %></pre>
           </div>