Class: CloudCrowd::Job

Overview

A chunk of work that will be farmed out into many WorkUnits to be processed
in parallel by each active CloudCrowd::Worker. Jobs are defined by a list
of inputs (usually public urls to files), an action (the name of a script
that CloudCrowd knows how to run), and, eventually a corresponding list of
output.

#cleanup_assets ⇒ Object

Cleaning up after a job will remove all of its files from S3 or the
filesystem. Destroying a Job will cleanup_assets first. Run this in a
separate thread to get out of the transaction's way. TODO: Convert this
into a 'cleanup' work unit that gets run by a worker.

#percent_complete ⇒ Object

How complete is this Job? Unfortunately, with the current processing
sequence, the percent_complete can pull a fast one and go backwards. This
happens when there's a single large input that takes a long time to
split, and when it finally does it creates a whole swarm of work units.
This seems unavoidable.