# Copyright (c) 2012 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 = "Mike Truty <truty@google.com>/Chrome OS Kernel"
NAME = "kernel_daily_benchmarks"
PURPOSE = "Gather benchmark/performance data for kernel evaluation."
CRITERIA = "All tests with SUITE=kernel_daily_benchmarks must pass."

TIME = "MEDIUM"
TEST_CATEGORY = "General"
TEST_CLASS = "suite"
TEST_TYPE = "Server"

DOC = """
This is the Kernel Per-Build Benchmarks Test suite.  Failures in this test
suite should not close the tree.

@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.
@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
"""

import common
from autotest_lib.server.cros import provision
from autotest_lib.server.cros.dynamic_suite import dynamic_suite

_BUG_TEMPLATE = {
    'labels': ['Cr-Os-Kernel', 'OS-Chrome', 'kernel_daily_benchmarks'],
    'owner': '',
    'status': None,
    'summary': None,
    'title': None,
}

dynamic_suite.reimage_and_run(
    build=build, board=board, name='kernel_daily_benchmarks', job=job,
    pool=pool, check_hosts=check_hosts, add_experimental=True, num=num,
    file_bugs=file_bugs, priority=priority, timeout_mins=timeout_mins,
    devserver_url=devserver_url, version_prefix=provision.CROS_VERSION_PREFIX,
    bug_template=_BUG_TEMPLATE, wait_for_results=wait_for_results,
    job_retry=job_retry)
