X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e4c30dbf271df0633efce61c630a29c89bc43bff..42c20b25e1325124b88e3b9b285544dc41122b56:/apps/workbench/app/models/work_unit.rb diff --git a/apps/workbench/app/models/work_unit.rb b/apps/workbench/app/models/work_unit.rb index 1c2d02fa96..493dd2f578 100644 --- a/apps/workbench/app/models/work_unit.rb +++ b/apps/workbench/app/models/work_unit.rb @@ -1,3 +1,7 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class WorkUnit # This is an abstract class that documents the WorkUnit interface @@ -9,6 +13,10 @@ class WorkUnit # returns the arvados UUID of the underlying object end + def parent + # returns the parent uuid of this work unit + end + def children # returns an array of child work units end @@ -17,6 +25,10 @@ class WorkUnit # returns uuid of the user who modified this work unit most recently end + def owner_uuid + # returns uuid of the owner of this work unit + end + def created_at # returns created_at timestamp end @@ -37,6 +49,10 @@ class WorkUnit # returns a string representing state of the work unit end + def exit_code + # returns the work unit's execution exit code + end + def state_bootstrap_class # returns a class like "danger", "success", or "warning" that a view can use directly to make a display class end @@ -107,8 +123,8 @@ class WorkUnit # returns true if this work unit can be canceled end - def readable? - # is the proxied object readable by current user? + def confirm_cancellation + # returns true if this work unit wants to use a confirmation for cancellation end def uri @@ -124,10 +140,6 @@ class WorkUnit end # view helper methods - def link_to_log - # display a link to log if present - end - def walltime # return walltime for a running or completed work unit end @@ -179,4 +191,28 @@ class WorkUnit def container_uuid # container_uuid of a container_request end + + def requesting_container_uuid + # requesting_container_uuid of a container_request + end + + def log_object_uuids + # object uuids for live log + end + + def live_log_lines(limit) + # fetch log entries from logs table for @proxied + end + + def render_log + # return partial and locals to be rendered + end + + def template_uuid + # return the uuid of this work unit's template, if one exists + end + + def runtime_status + # Returns this work unit's runtime_status, if any + end end