- # The 'job' parameter can be either a Job model object, or a hash containing
- # the same fields as a Job object (such as the :job entry of a pipeline
- # component).
- def self.state job
- # This has a valid state method on it so call that
- if job.respond_to? :state and job.state
- return job.state
- end
-
- # Figure out the state based on the other fields.
- if job[:cancelled_at]
- "Cancelled"
- elsif job[:success] == false
- "Failed"
- elsif job[:success] == true
- "Complete"
- elsif job[:running] == true
- "Running"
- else
- "Queued"
- end
- end
-