Improve API server's git rev-list calls.
[arvados.git] / apps / workbench / app / views / pipeline_instances / _show_compare.html.erb
1 <% content_for :css do %>
2 .notnormal {
3   background: #ffffaa;
4 }
5 .headrow div {
6   padding-top: .5em;
7   padding-bottom: .5em;
8 }
9 .headrow:first-child {
10   border-bottom: 1px solid black;
11 }
12 <% end %>
13
14 <% pi_span = [(10.0/[@objects.count,1].max).floor,1].max %>
15
16 <div class="headrow">
17   <div class="row">
18   <div class="col-sm-2">
19     <%# label %>
20   </div>
21   <% @objects.each do |object| %>
22   <div class="col-sm-<%= pi_span %>" style="overflow-x: hidden; text-overflow: ellipsis;">
23     <%= render :partial => "show_object_button", :locals => {object: object, size: 'sm' } %>
24     <%= object.name || "unnamed #{object.class_for_display.downcase}" %>
25     <br />
26     <span class="deemphasize">Template:</span> <%= link_to_if_arvados_object object.pipeline_template_uuid, friendly_name: true %>
27   </div>
28   <% end %>
29   </div>
30 </div>
31
32 <% @rows.each do |row| %>
33 <div class="row">
34   <div class="col-sm-2">
35     <%= row[:name] %>
36   </div>
37   <% @objects.each_with_index do |_, x| %>
38     <div class="col-sm-<%= pi_span %>">
39       <div class="row">
40         <div class="col-sm-12">
41
42         <% if row[:components][x] %>
43           <% pj = render_pipeline_job row[:components][x] %>
44
45           <%= link_to_if_arvados_object pj[:job_id], {friendly_name: true, with_class_name: true}, {class: 'deemphasize'} %>
46           <br />
47
48           <% %w(script script_version script_parameters output).each do |key| %>
49               <% unless key=='output' and pj[:result] != 'complete' %>
50               <% val = pj[key.to_sym] || pj[:job].andand[key.to_sym] %>
51               <% link_name = case
52                  when !val
53                    val = ''
54                  when key == 'script_version' && val.match(/^[0-9a-f]{7,}$/)
55                    val = val[0..7] # TODO: leave val alone, make link_to handle git commits
56                  when key == 'output'
57                    val.sub! /\+K.*$/, ''
58                    val[0..12]
59                  when key == 'script_parameters'
60                    val = val.keys.sort.join(', ')
61                  end
62                  %>
63               <span class="deemphasize"><%= key %>:</span>&nbsp;<span class="<%= 'notnormal' if !pj[:is_normal][key.to_sym] %>"><%= link_to_if_arvados_object val, {friendly_name: true, link_text: link_name} %></span>
64               <% end %>
65             <br />
66           <% end %>
67           <% else %>
68           None
69         <% end %>
70         </div>
71       </div>
72     </div>
73   <% end %>
74 </div>
75 <div class="row" style="padding: .5em">
76 </div>
77 <% end %>
78
79