Home | History | Annotate | Download | only in test_suites
      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 = "chromeos-installer (a] google.com"
      6 NAME = "paygen_au_dev"
      7 PURPOSE = "Automated testing of delta payloads generated by paygen."
      8 CRITERIA = "All tests with SUITE=paygen_au_dev must pass."
      9 
     10 TIME = "MEDIUM"
     11 TEST_CATEGORY = "General"
     12 TEST_CLASS = "suite"
     13 TEST_TYPE = "Server"
     14 
     15 DOC = """
     16 This suite is similar to the au suite except that it's generated during paygen
     17 and does not close the tree when the tests fail. There will be one test per
     18 delta generated by paygen for a given release image. These tests (control
     19 files) are generated at the time we are generating delta payloads, uploaded
     20 by paygen, and expected to be kicked off by paygen. This suite can be re-run
     21 at anytime using atest or the autotest web frontend.
     22 
     23 Note: the control files used by this suite are auto-generated and the template
     24 control file is in server/site_tests/autoupdate_EndToEndTest/control.
     25 
     26 Note: this suite only tests deltas from the dev channel.
     27 
     28 @param build: The name of the image to test.
     29               Ex: x86-mario-release/R17-1412.33.0-a1-b29
     30 @param board: The board to test on. Ex: x86-mario
     31 @param pool: The pool of machines to utilize for scheduling. If pool=None
     32              board is used.
     33 @param check_hosts: require appropriate live hosts to exist in the lab.
     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(devserver_url)
     43 ds.stage_artifacts(build, artifacts=['paygen_au_dev_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': ['Cr-Internals-Installer'],
     50     'owner': '',
     51     'status': None,
     52     'summary': None,
     53     'title': None,
     54     'cc': ['chromeos-installer-alerts (a] google.com']
     55 }
     56 
     57 # TODO(sosa): Really should skip_reimage but suite logic does not currently
     58 # work without reimaging.
     59 args_dict['max_runtime_mins'] = 60
     60 args_dict['name'] = NAME
     61 args_dict['job'] = job
     62 args_dict['add_experimental'] = True
     63 args_dict['version_prefix'] = provision.CROS_VERSION_PREFIX
     64 args_dict['bug_template'] = _BUG_TEMPLATE
     65 
     66 dynamic_suite.reimage_and_run(**args_dict)
     67