You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.4 KiB
44 lines
1.4 KiB
from autotest_lib.server import utils
|
|
from autotest_lib.server.cros import provision
|
|
|
|
try:
|
|
from chromite.lib import metrics
|
|
except ImportError:
|
|
metrics = utils.metrics_mock
|
|
|
|
|
|
DURATION_METRIC = 'chromeos/autotest/autoserv/verify_duration'
|
|
|
|
|
|
# A string of the form 'label1,label2:value,label3'.
|
|
job_labels = locals().get('job_labels') or ','.join(args)
|
|
labels_list = [l.strip() for l in job_labels.split(',') if l]
|
|
|
|
|
|
def verify(machine):
|
|
print('Initializing host %s' % machine)
|
|
job.record('START', None, 'verify')
|
|
target = hosts.create_target_machine(machine,
|
|
try_lab_servo=True)
|
|
hostname = utils.get_hostname_from_machine(machine)
|
|
try:
|
|
with metrics.SecondsTimer(DURATION_METRIC,
|
|
fields={'dut_host_name': hostname}):
|
|
target.verify()
|
|
provision.Verify.run_task_actions(job, target, labels_list)
|
|
except Exception:
|
|
logging.exception('Verify failed due to Exception.')
|
|
job.record('END FAIL', None, 'verify')
|
|
# See the provision control segment for the explanation of why we're
|
|
# doing this.
|
|
raise Exception('')
|
|
else:
|
|
hostname = utils.get_hostname_from_machine(machine)
|
|
job.record('END GOOD', None, 'verify',
|
|
'%s verified successfully' % hostname)
|
|
|
|
|
|
job.parallel_simple(verify, machines)
|
|
|
|
# vim: set syntax=python :
|