61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| # Copyright 2019 The Chromium OS Authors. All rights reserved.
 | |
| # Use of this source code is governed by a BSD-style license that can be
 | |
| # found in the LICENSE file.
 | |
| 
 | |
| from autotest_lib.server import utils
 | |
| 
 | |
| AUTHOR = "Chrome OS Team"
 | |
| NAME = "servo_LabstationVerification"
 | |
| PURPOSE = "Ensure labstation images can provide basic lab functionality."
 | |
| ATTRIBUTES = "suite:labstation_verification"
 | |
| TIME = "MEDIUM"
 | |
| TEST_CATEGORY = "Benchmark"
 | |
| TEST_CLASS = "platform"
 | |
| TEST_TYPE = "server"
 | |
| 
 | |
| DOC = """
 | |
| This test is a wrapper around servo_Verification
 | |
| 
 | |
| This test makes the following assumptions:
 | |
| 1. There is a servo device attached to the labstation being tested.
 | |
| 1.1 There is a usb stick in the imaging slot on the servo device.
 | |
| 
 | |
| 2. There is a DUT attached to the servo mentioned in 1.
 | |
| 
 | |
| 3. The DUT is connected to the internet via ethernet through the servo.
 | |
| 3.1 The DUT is connected to the same subnet as the labstation.
 | |
| 
 | |
| 4. The shared network supports IPv6 with IEEE EUI-64 (from EUI-48/mac) node
 | |
| addresses
 | |
| 
 | |
| 4.1: There is also a way for local testing to specify dut_ip=${IP} in the args
 | |
| to skip IP inferring and use a known IP.
 | |
| 
 | |
| Sample usage:
 | |
| test_that <labstation ip> servo_LabstationVerification
 | |
| 
 | |
| test_that <labstation ip> servo_LabstationVerification --args="dut_ip=${DUT_IP}"
 | |
| // To skip DUT ip inferring and use a known DUT ip
 | |
| 
 | |
| A fun note:
 | |
| If the labstation being tested is running an image that has already been
 | |
| qualified, this test can also be used to see whether a (new) DUT is likely
 | |
| to have lab deployment issues that are specific to the DUT as the test goes
 | |
| through a lot of the flow that deployment goes through, and also tests some
 | |
| basic features like console access and powerstate, which could trip up many
 | |
| tests or repairs.
 | |
| """
 | |
| # Workaround to make it compatible with moblab autotest UI.
 | |
| global args_dict
 | |
| try:
 | |
|     args_dict
 | |
| except NameError:
 | |
|     args_dict = utils.args_to_dict(args)
 | |
| 
 | |
| def run(machine):
 | |
|     host = hosts.create_host(machine)
 | |
|     job.run_test("servo_LabstationVerification", host=host, config=args_dict,
 | |
|                  disable_sysinfo=True)
 | |
| 
 | |
| parallel_simple(run, machines)
 |