2 # This is an abstract class that documents the WorkUnit interface
5 # returns the label that was assigned when creating the work unit
9 # returns the arvados UUID of the underlying object
13 # returns the parent uuid of this work unit
17 # returns an array of child work units
20 def modified_by_user_uuid
21 # returns uuid of the user who modified this work unit most recently
25 # returns uuid of the owner of this work unit
29 # returns created_at timestamp
33 # returns modified_at timestamp
37 # returns started_at timestamp for this work unit
41 # returns finished_at timestamp
45 # returns a string representing state of the work unit
49 # returns the work unit's execution exit code
52 def state_bootstrap_class
53 # returns a class like "danger", "success", or "warning" that a view can use directly to make a display class
57 # returns true if the work unit finished successfully,
58 # false if it has a permanent failure,
59 # and nil if the final state is not determined.
63 # returns a number between 0 and 1
67 # returns uuid or pdh with saved log data, if any
71 # returns work unit parameters, if any
75 # returns script for this work unit, if any
79 # returns this work unit's script repository, if any
83 # returns this work unit's script_version, if any
86 def supplied_script_version
87 # returns this work unit's supplied_script_version, if any
91 # returns this work unit's docker_image, if any
94 def runtime_constraints
95 # returns this work unit's runtime_constraints, if any
99 # returns this work unit's priority, if any
103 # returns if this is nondeterministic
107 # returns array containing uuid or pdh of output data
111 # summary status of any children of this work unit
114 def child_summary_str
115 # textual representation of child summary
119 # returns true if this work unit can be canceled
122 def confirm_cancellation
123 # returns true if this work unit wants to use a confirmation for cancellation
127 # returns the uri for this work unit
131 # title for the work unit
134 def has_unreadable_children
135 # accept it if you can't understand your own children
138 # view helper methods
140 # return walltime for a running or completed work unit
144 # return cputime for a running or completed work unit
148 # return queued time if the work unit is queued
152 # is the work unit in running state?
156 # is the work unit in paused state?
160 # is the work unit in finished state?
164 # is this work unit in failed state?
172 # initial workind directory
176 # environment variables
184 # path to a directory or file to save output
188 # container_uuid of a container_request
192 # object uuids for live log
195 def live_log_lines(limit)
196 # fetch log entries from logs table for @proxied
200 # return partial and locals to be rendered
204 # return the uuid of this work unit's template, if one exists