15087: Make container status a separate panel
[arvados.git] / apps / workbench / app / views / projects / _container_summary.html.erb
diff --git a/apps/workbench/app/views/projects/_container_summary.html.erb b/apps/workbench/app/views/projects/_container_summary.html.erb
new file mode 100644 (file)
index 0000000..1a411af
--- /dev/null
@@ -0,0 +1,31 @@
+<%# Copyright (C) The Arvados Authors. All rights reserved.
+
+SPDX-License-Identifier: AGPL-3.0 %>
+
+<div class="compute-summary-numbers">
+    <table>
+      <colgroup>
+        <col width="50%">
+        <col width="50%">
+      </colgroup>
+      <tr>
+       <% pending_containers = Container.order("modified_at asc").filter([["state", "in", ["Queued", "Locked"]], ["priority", ">", 0]]).limit(1) %>
+       <% running_containers = Container.order("started_at asc").where(state: "Running").limit(1) %>
+        <td><%= pending_containers.items_available %></td>
+        <td><%= running_containers.items_available %></td>
+      </tr>
+      <tr>
+        <th>Pending containers</th>
+        <th>Running containers</th>
+      </tr>
+      <tr>
+        <th><%= if pending_containers.first then render_runtime(Time.now - pending_containers.first.modified_at, false, false) else "-" end %></th>
+        <th><%= if running_containers.first then render_runtime(Time.now - running_containers.first.started_at, false, false) else "-" end %></th>
+      </tr>
+      <tr>
+        <th>Oldest pending</th>
+        <th>Longest running</th>
+      </tr>
+    </table>
+
+</div>