1 # Copyright (c) 2013 The Chromium OS Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 AUTHOR = "Chrome OS Team" 6 NAME = "push_to_prod" 7 PURPOSE = "Test Autotest before push to prod." 8 CRITERIA = "" 9 10 TIME = "LONG" 11 TEST_CATEGORY = "General" 12 TEST_CLASS = "suite" 13 TEST_TYPE = "Server" 14 15 DOC = """ 16 This suite is designed to test various aspect of Autotest. It should be run 17 before push to prod. Design doc: 18 https://docs.google.com/a/google.com/document/d/1JMz0xS3fZRSHMpFkkKAL_rxsdbNZomhHbC3B8L71uuI/edit?usp=sharing 19 Email chromeos-lab-infrastructure (a] google.com if you have any question about this 20 suite. 21 22 This suite sets num to 6 in the reimage_and_run call to make sure we run 23 across 6 different machines. This overrides the CROS.sharding_factor option in 24 the global_config. 25 26 27 @param build: The name of the image to test. 28 Ex: x86-mario-release/R17-1412.33.0-a1-b29 29 @param board: The board to test on. Ex: x86-mario 30 @param pool: The pool of machines to utilize for scheduling. If pool=None 31 board is used. 32 @param check_hosts: require appropriate live hosts to exist in the lab. 33 @param SKIP_IMAGE: (optional) If present and True, don't re-image devices. 34 """ 35 36 import common 37 from autotest_lib.client.common_lib.cros import dev_server 38 from autotest_lib.server.cros import provision 39 from autotest_lib.server.cros.dynamic_suite import dynamic_suite 40 41 # Needs to be done to generate the control files for the suite. 42 ds = dev_server.ImageServer.resolve(build) 43 ds.stage_artifacts(build, artifacts=['au_suite']) 44 45 # Values specified in this bug template will override default values when 46 # filing bugs on tests that are a part of this suite. If left unspecified 47 # the bug filer will fallback to it's defaults. 48 _BUG_TEMPLATE = { 49 'labels': ['push_to_prod'], 50 'owner': '', 51 'status': None, 52 'summary': None, 53 'title': None, 54 'ccs': [] 55 } 56 57 args_dict['max_runtime_mins'] = 20 58 args_dict['file_bugs'] = True 59 args_dict['name'] = 'push_to_prod' 60 args_dict['job'] = job 61 args_dict['add_experimental'] = True 62 args_dict['version_prefix'] = provision.CROS_VERSION_PREFIX 63 args_dict['bug_template'] = _BUG_TEMPLATE 64 65 dynamic_suite.reimage_and_run(**args_dict) 66