• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1from autotest_lib.client.common_lib.cros.graphite import autotest_stats
2from autotest_lib.server import utils
3from autotest_lib.server.cros import provision
4
5
6# A string of the form 'label1,label2:value,label3'.
7job_labels = locals().get('job_labels') or ','.join(args)
8labels_list = [l.strip() for l in job_labels.split(',') if l]
9
10
11def verify(machine):
12    print 'Initializing host %s' % machine
13    timer = None
14    # We set try_lab_servo to True to trigger servo verify and
15    # servo update if needed.
16    target = hosts.create_target_machine(machine, initialize=False,
17                                         auto_monitor=False, try_lab_servo=True)
18    try:
19        job.record('START', None, 'verify')
20        timer = autotest_stats.Timer('verify_time')
21        timer.start()
22
23        target.verify()
24        provision.run_special_task_actions(job, target, labels_list,
25                                           provision.Verify)
26    except Exception as e:
27        logging.exception(e)
28        job.record('END FAIL', None, 'verify')
29        # See the provision control segment for the explanation of why we're
30        # doing this.
31        raise Exception('')
32    else:
33        job.record('END GOOD', None, 'verify',
34                   '%s verified successfully' % machine)
35    finally:
36        if timer:
37            timer.stop()
38
39
40job.parallel_simple(verify, machines)
41
42# vim: set syntax=python :
43