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
5AUTHOR = "Chrome OS Team"
6NAME = "au"
7PURPOSE = "Automated testing of autoupdate done by continuous builders."
8CRITERIA = "All tests with SUITE=au must pass."
9
10TIME = "MEDIUM"
11TEST_CATEGORY = "General"
12TEST_CLASS = "suite"
13TEST_TYPE = "Server"
14
15DOC = """
16This is the equivalent of the build verification suite but for autoupdate in the
17sense that this suite contains the Autoupdate Verification tests that must pass
18with every build.
19
20Note: the control files used by this suite are auto-generated by Chromium OS
21builds which use the template control file from
22server/site_tests/autoupdate_EndToEndTest/control.
23
24@param build: The name of the image to test.
25              Ex: x86-mario-release/R17-1412.33.0-a1-b29
26@param board: The board to test on. Ex: x86-mario
27@param pool: The pool of machines to utilize for scheduling. If pool=None
28             board is used.
29@param check_hosts: require appropriate live hosts to exist in the lab.
30"""
31
32import common
33from autotest_lib.client.common_lib.cros import dev_server
34from autotest_lib.server.cros import provision
35from autotest_lib.server.cros.dynamic_suite import dynamic_suite
36
37# Needs to be done to generate the control files for the suite.
38ds = dev_server.ImageServer(devserver_url)
39ds.stage_artifacts(build, artifacts=['au_suite'])
40
41# Values specified in this bug template will override default values when
42# filing bugs on tests that are a part of this suite. If left unspecified
43# the bug filer will fallback to it's defaults.
44_BUG_TEMPLATE = {
45    'labels': ['Cr-Internals-Installer'],
46    'owner': '',
47    'status': None,
48    'summary': None,
49    'title': None,
50    'cc': ['chromeos-installer-alerts@google.com']
51}
52
53# TODO(sosa): Really should skip_reimage but suite logic does not currently
54# work without reimaging.
55args_dict['max_runtime_mins'] = 60
56args_dict['name'] = 'au'
57args_dict['job'] = job
58args_dict['add_experimental'] = True
59args_dict['version_prefix'] = provision.CROS_VERSION_PREFIX
60args_dict['bug_template'] = _BUG_TEMPLATE
61
62dynamic_suite.reimage_and_run(**args_dict)
63