Verify repair fixes for scheduler

-change Agent and AgentTask to support a clear_queue_on_failure constructor para
m to AgentTasks.  If True (default), behavior is as before.  If False, the rest 
of the queue will not be clear on task failure - failure tasks will be inserted 
before the rest of the tasks.
-successful RepairTask sets host status to 'Repair Succeeded', not 'Ready', beca
use succesful repair is no guarantee the host is actually OK.  We depend on a Re
verifyTask to follow the RepairTask and verify the machine is actually ready.
-added ReverifyTask and modified VerifyTask to support flowchart as posted at ht
tp://test.kernel.org/autotest/SchedulerSpecification.
-added SchedulerReverifyTask, and refactored all the verify stuff (including add
ing a SchedulerVerifyMixin) to cleanly support both synch and async verify and r
everify.  This includes a fair bit of use of template methods.
-moved some logic from VerifyTask and VerifySynchronousTask out into HostQueueEn
try and Job, including figuring out the verify results dir and handling host ver
ify/repair failure (requeue a meta-host, fail a non-meta-host, stop other entrie
s for a synch job). This is cleaner with the increased complexity of verify/repa
ir.
-modified results moving code to just overwrite existing files/directories.  It 
prints a warning when it does this, but doesn't crash anymore.  Phew.
-modified machines file logic to only write a .machines file for a multi-machine
 async job, and write it on-the-fly as each host runs.
-made meta-host entries unblock hosts when releasing them - releasing only happe
ns when a host fails verify + repair, and in this case, we want to allow assigni
ng back to that host if it should get repaired later
-added DBObject.fetch() and DBObject.delete() to support host unblocking.  Had t
o change how DBObject gets the table name, so that DBObject.fetch(), which must 
be a class method, could access the table name.
-added timestamp to queue.log logging
-global statements are only necessary when writing globals

Signed-off-by: Steve Howard <showard@google.com>



git-svn-id: http://test.kernel.org/svn/autotest/trunk@1281 592f7852-d20e-0410-864c-8624ca9c26a4
1 file changed