Add ability to associate drone sets with jobs. This restricts a job to
running on a specified set of drones.

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


git-svn-id: http://test.kernel.org/svn/autotest/trunk@4439 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/frontend/afe/resources.py b/frontend/afe/resources.py
index b47c5f5..eaeeea0 100644
--- a/frontend/afe/resources.py
+++ b/frontend/afe/resources.py
@@ -643,9 +643,11 @@
         rep = super(Job, self).full_representation()
         queue_entries = QueueEntryCollection(self._request)
         queue_entries.set_query_parameters(job=self.instance.id)
+        drone_set = self.instance.drone_set and self.instance.drone_set.name
         rep.update({'email_list': self.instance.email_list,
                     'parse_failed_repair':
                         bool(self.instance.parse_failed_repair),
+                    'drone_set': drone_set,
                     'execution_info':
                         ExecutionInfo.execution_info_from_job(self.instance),
                     'queue_entries': queue_entries.link(),
@@ -686,6 +688,7 @@
                 reboot_before=execution_info.get('cleanup_before_job'),
                 reboot_after=execution_info.get('cleanup_after_job'),
                 parse_failed_repair=input_dict.get('parse_failed_repair', None),
+                drone_set=input_dict.get('drone_set', None),
                 keyvals=input_dict.get('keyvals', None))
 
         host_objects, metahost_label_objects, atomic_group = [], [], None