# 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.
"""Module containing the constants to be reused throughout suite_scheduler."""
class Labels:
"""
Constants related to label names.
@var BOARD_PREFIX The string with which board labels are prefixed.
@var POOL_PREFIX The stright with which pool labels are prefixed.
"""
BOARD_PREFIX = 'board:'
POOL_PREFIX = 'pool:'
class Pools:
"""
Well-known pool names used in automated inventory management.
These are general purpose pools of DUTs that are considered
identical for purposes of testing. That is, a device in one of
these pools can be shifted to another pool at will for purposes
of supplying test demand.
Devices in these pools are not allowed to have special-purpose
attachments, or to be part of in any kind of custom fixture.
Devices in these pools are also required to reside in areas
managed by the Platforms team (i.e. at the time of this writing,
only in "Atlantis" or "Destiny").
CRITICAL_POOLS - Pools that must be kept fully supplied in order
to guarantee timely completion of tests from builders.
SPARE_POOL - A low priority pool that is allowed to provide
spares to replace broken devices in the critical pools.
MANAGED_POOLS - The set of all the general purpose pools
monitored for health.
"""
CRITICAL_POOLS = ['bvt', 'cq', 'continuous', 'cts']
SPARE_POOL = 'suites'
MANAGED_POOLS = CRITICAL_POOLS + [SPARE_POOL]
class Builds:
"""
Constants related to build type.
@var FIRMWARE_RW: The string indicating the given build is used to update
RW firmware.
@var CROS: The string indicating the given build is used to update ChromeOS.
"""
FIRMWARE_RW = 'firmware_rw'
FIRMWARE_RO = 'firmware_ro'
CROS = 'cros'