Add implementation for the Planner global support. Also add unit tests
for the execution engine.

Caveat: the global support is still single-threaded with the execution
engine. I have an idea of how to make it multi-threaded, but I'd like to
push this simpler prototype out first.

Signed-off-by: James Ren <jamesren@google.com>


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4388 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/frontend/planner/models.py b/frontend/planner/models.py
index 48824d3..9e07b42 100644
--- a/frontend/planner/models.py
+++ b/frontend/planner/models.py
@@ -19,7 +19,7 @@
 
     Optional:
         label_override: A label to apply to each Autotest job.
-        support: The global support object to apply to this plan
+        support: The global support script to apply to this plan
     """
     name = dbmodels.CharField(max_length=255, unique=True)
     label_override = dbmodels.CharField(max_length=255, null=True, blank=True)
@@ -138,12 +138,15 @@
         estimated_runtime: Time in hours that the test is expected to run. Will
                            be automatically generated (on the frontend) for
                            tests in Autotest.
+        skipped_hosts: Hosts that are going to skip this test.
     """
     alias = dbmodels.CharField(max_length=255)
     control_file = dbmodels.ForeignKey(ControlFile)
     is_server = dbmodels.BooleanField(default=True)
     execution_order = dbmodels.IntegerField(blank=True)
     estimated_runtime = dbmodels.IntegerField()
+    skipped_hosts = dbmodels.ManyToManyField(
+            afe_models.Host, db_table='planner_test_configs_skipped_hosts')
 
     class Meta:
         db_table = 'planner_test_configs'