
# Copyright 2020 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# This control file was auto-generated by generate_storage_qual_control_files.py
# Do not edit this file!

from autotest_lib.client.common_lib import utils

AUTHOR = "chromeos-storage"
NAME = "hardware_StorageStress_retention_soak_5"
METADATA = {
    "contacts": ["chromeos-storage@google.com"],
    "bug_component": "b:974567",
    "criteria": "Part of storage AVL qualification suite",
    "hw_agnostic": False
}
ATTRIBUTES = "suite:storage_qual"
PURPOSE = "hardware_StorageStress_retention_soak_5"
TIME = "long"
TEST_CATEGORY = "Stress"
TEST_CLASS = "Hardware"
TEST_TYPE = "server"
PY_VERSION = 3
REQUIRE_SSP = True
PRIORITY = 90
DEPENDENCIES = "retention"
JOB_RETRIES = 0
FAST = False

DOC = "hardware_StorageStress_retention_soak_5"

keyval = dict()
keyval['storage_qual_version'] = 1
try:
    keyval['bug_id'] = bug_id
    keyval['part_id'] = part_id
except NameError:
    # bug_id and/or part_id variables not defined
    pass
utils.write_keyval(job.resultdir, keyval)

def run(machine):
    job.run_test("hardware_StorageStress", host=hosts.create_host(machine),
            client_ip=machine, tag='soak', power_command='wait', storage_test_command='full_write', suspend_duration=300, duration=14400)

parallel_simple(run, machines)
