| # Copyright (c) 2013 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. |
| |
| AUTHOR = "chromeos-installer@google.com" |
| NAME = "paygen_au_canary" |
| PURPOSE = "Automated testing of delta payloads generated by paygen." |
| CRITERIA = "All tests with SUITE=paygen_au_canary must pass." |
| |
| TIME = "MEDIUM" |
| TEST_CATEGORY = "General" |
| TEST_CLASS = "suite" |
| TEST_TYPE = "Server" |
| |
| DOC = """ |
| This suite is similar to the au suite except that it's generated during paygen |
| and does not close the tree when the tests fail. There will be one test per |
| delta generated by paygen for a given release image. These tests (control |
| files) are generated at the time we are generating delta payloads, uploaded |
| by paygen, and expected to be kicked off by paygen. This suite can be re-run |
| at anytime using atest or the autotest web frontend. |
| |
| Note: the control files used by this suite are auto-generated and the template |
| control file is in server/site_tests/autoupdate_EndToEndTest/control. |
| |
| Note: this suite only tests deltas from the canary channel. |
| |
| @param build: The name of the image to test. |
| Ex: x86-mario-release/R17-1412.33.0-a1-b29 |
| @param board: The board to test on. Ex: x86-mario |
| @param pool: The pool of machines to utilize for scheduling. If pool=None |
| board is used. |
| @param check_hosts: require appropriate live hosts to exist in the lab. |
| """ |
| |
| import common |
| from autotest_lib.client.common_lib.cros import dev_server |
| from autotest_lib.server.cros import provision |
| from autotest_lib.server.cros.dynamic_suite import dynamic_suite |
| |
| # Needs to be done to generate the control files for the suite. |
| ds = dev_server.ImageServer(devserver_url) |
| ds.stage_artifacts(build, artifacts=['paygen_au_canary_suite']) |
| |
| # Values specified in this bug template will override default values when |
| # filing bugs on tests that are a part of this suite. If left unspecified |
| # the bug filer will fallback to it's defaults. |
| _BUG_TEMPLATE = { |
| 'labels': ['Cr-Internals-Installer'], |
| 'owner': '', |
| 'status': None, |
| 'summary': None, |
| 'title': None, |
| 'cc': None |
| } |
| |
| # TODO(sosa): Really should skip_reimage but suite logic does not currently |
| # work without reimaging. |
| dynamic_suite.reimage_and_run( |
| build=build, board=board, name=NAME, job=job, pool=pool, |
| check_hosts=check_hosts, add_experimental=True, num=num, |
| file_bugs=file_bugs, priority=priority, timeout_mins=timeout_mins, |
| max_runtime_mins=60, bug_template=_BUG_TEMPLATE, |
| devserver_url=devserver_url, |
| version_prefix=provision.CROS_VERSION_PREFIX, |
| wait_for_results=wait_for_results, job_retry=job_retry) |