X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/7ea93a3e137a3375daa76073ddbd582deb22141c..0f644e242ef37c911ad3dc25aca8135c339de349:/apps/workbench/app/views/work_units/_component_detail.html.erb diff --git a/apps/workbench/app/views/work_units/_component_detail.html.erb b/apps/workbench/app/views/work_units/_component_detail.html.erb index 6eb2ae91b3..3271bf9d76 100644 --- a/apps/workbench/app/views/work_units/_component_detail.html.erb +++ b/apps/workbench/app/views/work_units/_component_detail.html.erb @@ -1,20 +1,43 @@ +<%# Copyright (C) The Arvados Authors. All rights reserved. + +SPDX-License-Identifier: AGPL-3.0 %> + <% collections = [current_obj.outputs, current_obj.docker_image].flatten.compact.uniq collections_pdhs = collections.select {|x| !CollectionsHelper.match(x).nil?}.uniq.compact collections_uuids = collections - collections_pdhs preload_collections_for_objects collections_uuids if collections_uuids.any? - preload_for_pdhs collections_pdhs if collections_pdhs.any? + preload_links_for_objects collections_uuids if collections_uuids.any? preload_objects_for_dataclass(Repository, [current_obj.repository], :name) if current_obj.repository + + # if container_X, preload mounted collections + if @object.is_a? Container or @object.is_a? ContainerRequest + # get any collections in mounts + mounts = current_obj.send(:mounts) if current_obj.respond_to?(:mounts) + input_obj = mounts.andand[:"/var/lib/cwl/cwl.input.json"].andand[:content] + if input_obj + input_obj.to_s.scan(/([0-9a-f]{32}\+\d+)/).each {|cs| collections_pdhs += cs} + end + + command = current_obj.send(:command) if current_obj.respond_to?(:command) + if command + command.to_s.scan(/([0-9a-f]{32}\+\d+)/).each {|cs| collections_pdhs += cs} + end + end + + collections_pdhs.compact.uniq + preload_for_pdhs collections_pdhs if collections_pdhs.any? + preload_links_for_objects collections_pdhs if collections_pdhs.any? %>
<%= k.to_s %>: | -+ |
<% if k == :command %>
-
- <%=val%>
-
+ <% val = JSON.pretty_generate(val) %>
+ <%= render partial: 'show_text_with_locators', locals: {data_height: 200, text_data: val} %>
<% else %>
<%= val %>
<% end %>
@@ -172,26 +194,16 @@
input_obj = mounts.andand[:"/var/lib/cwl/cwl.input.json"].andand[:content]
mnt_inputs = JSON.pretty_generate(input_obj) if input_obj
%>
- |
cwl.input.json: | -
-
- <% mnt_inputs.each_line do |l| %>
- <% text_part = l %>
- <% match = l.match /\"keep:.*?\"/ %>
- <% if match %>
- <% text_part = l[0..l.index("\"keep:")-1] %>
- <% loc_part = match[0][6..-2] %>
- <% end %>
- <%= text_part %><%= if loc_part then link_to_arvados_object_if_readable(loc_part, loc_part, friendly_name: true) end %> <% if loc_part then %>
+ <% end %> - <% end %> - | + <%= render partial: 'show_text_with_locators', locals: {data_height: 400, text_data: mnt_inputs} %> | - <% end %> -