X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/4ed794e2803ef9812dbc7ae938a8e17b3b9714c1..3fa4a2b6138e3e9e468dd885a743ca38f08f0755:/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 e15cc443a9..bb5b913dfe 100644 --- a/apps/workbench/app/views/work_units/_component_detail.html.erb +++ b/apps/workbench/app/views/work_units/_component_detail.html.erb @@ -1,3 +1,13 @@ +<% + 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_objects_for_dataclass(Repository, [current_obj.repository], :name) if current_obj.repository +%> +
@@ -6,11 +16,19 @@ <% else %> <% keys = [:uuid, :modified_by_user_uuid, :created_at, :started_at, :finished_at, :container_uuid, :priority] %> - <% keys << :outputs if @object.uuid == current_obj.uuid %> + <% keys << :log_collection if @object.uuid != current_obj.uuid %> + <% keys << :outputs %> <% keys.each do |k| %> - <% val = current_obj.send(k) if current_obj.respond_to?(k) %> - <% has_val = val %> - <% has_val = val.andand.any? if k == :outputs %> + <% + val = current_obj.send(k) if current_obj.respond_to?(k) + if k == :outputs + has_val = val.andand.any? + elsif k == :log_collection and current_obj.state_label == "Running" + has_val = true + else + has_val = val + end + %> <% if has_val %>
@@ -29,6 +47,8 @@ <% else %> <%= render partial: 'work_units/show_outputs', locals: {id: current_obj.uuid, outputs: val, align:""} %> <% end %> + <% elsif k == :log_collection %> + <%= render partial: 'work_units/show_log_link', locals: {wu: current_obj} %> <% else %> <%= val %> <% end %> @@ -41,13 +61,10 @@
- <% # link to repo tree/file only if the repo is readable - # and the commit is a sha1... - repo = - (/^[0-9a-f]{40}$/ =~ current_obj.script_version and - Repository.where(name: current_obj.repository).first) - - # ...and the api server provides an http:// or https:// url + <% # link to repo tree/file only if the repo is readable and the commit is a sha1 + repo = (/^[0-9a-f]{40}$/ =~ current_obj.script_version and + current_obj.repository and + object_for_dataclass(Repository, current_obj.repository, :name)) repo = nil unless repo.andand.http_fetch_url %> <% [:script, :repository, :script_version, :supplied_script_version, :nondeterministic,