Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(123)

Side by Side Diff: frontend/afe/rpc_utils.py

Issue 4823005: Merge remote branch 'cros/upstream' into tempbranch (Closed) Base URL: http://git.chromium.org/git/autotest.git@master
Patch Set: patch Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « conmux/drivers/reboot-apc ('k') | frontend/migrations/064_add_jobs_and_tests_time_indices.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 """\ 1 """\
2 Utility functions for rpc_interface.py. We keep them in a separate file so that 2 Utility functions for rpc_interface.py. We keep them in a separate file so that
3 only RPC interface functions go into that file. 3 only RPC interface functions go into that file.
4 """ 4 """
5 5
6 __author__ = 'showard@google.com (Steve Howard)' 6 __author__ = 'showard@google.com (Steve Howard)'
7 7
8 import datetime, os, sys, inspect 8 import datetime, os, sys, inspect
9 import django.http 9 import django.http
10 from autotest_lib.frontend.afe import models, model_logic, model_attributes 10 from autotest_lib.frontend.afe import models, model_logic, model_attributes
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 # check that hosts satisfy dependencies 226 # check that hosts satisfy dependencies
227 host_ids = [host.id for host in host_objects] 227 host_ids = [host.id for host in host_objects]
228 hosts_in_job = models.Host.objects.filter(id__in=host_ids) 228 hosts_in_job = models.Host.objects.filter(id__in=host_ids)
229 ok_hosts = hosts_in_job 229 ok_hosts = hosts_in_job
230 for index, dependency in enumerate(job_dependencies): 230 for index, dependency in enumerate(job_dependencies):
231 ok_hosts = ok_hosts.filter(labels__name=dependency) 231 ok_hosts = ok_hosts.filter(labels__name=dependency)
232 failing_hosts = (set(host.hostname for host in host_objects) - 232 failing_hosts = (set(host.hostname for host in host_objects) -
233 set(host.hostname for host in ok_hosts)) 233 set(host.hostname for host in ok_hosts))
234 if failing_hosts: 234 if failing_hosts:
235 raise model_logic.ValidationError( 235 raise model_logic.ValidationError(
236 {'hosts' : 'Host(s) failed to meet job dependencies: ' + 236 {'hosts' : 'Host(s) failed to meet job dependencies (' +
237 ', '.join(failing_hosts)}) 237 (', '.join(job_dependencies)) + '): ' +
238 (', '.join(failing_hosts))})
239
238 240
239 241
240 def _execution_key_for(host_queue_entry): 242 def _execution_key_for(host_queue_entry):
241 return (host_queue_entry.job.id, host_queue_entry.execution_subdir) 243 return (host_queue_entry.job.id, host_queue_entry.execution_subdir)
242 244
243 245
244 def check_abort_synchronous_jobs(host_queue_entries): 246 def check_abort_synchronous_jobs(host_queue_entries):
245 # ensure user isn't aborting part of a synchronous autoserv execution 247 # ensure user isn't aborting part of a synchronous autoserv execution
246 count_per_execution = {} 248 count_per_execution = {}
247 for queue_entry in host_queue_entries: 249 for queue_entry in host_queue_entries:
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
742 reboot_after=reboot_after, 744 reboot_after=reboot_after,
743 parse_failed_repair=parse_failed_repair, 745 parse_failed_repair=parse_failed_repair,
744 keyvals=keyvals, 746 keyvals=keyvals,
745 drone_set=drone_set, 747 drone_set=drone_set,
746 parameterized_job=parameterized_job) 748 parameterized_job=parameterized_job)
747 return create_new_job(owner=owner, 749 return create_new_job(owner=owner,
748 options=options, 750 options=options,
749 host_objects=host_objects, 751 host_objects=host_objects,
750 metahost_objects=metahost_objects, 752 metahost_objects=metahost_objects,
751 atomic_group=atomic_group) 753 atomic_group=atomic_group)
OLDNEW
« no previous file with comments | « conmux/drivers/reboot-apc ('k') | frontend/migrations/064_add_jobs_and_tests_time_indices.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698