• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 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
6AUTHOR = "sbasi"
7NAME = "provision_TestbedUpdate"
8PURPOSE = "Provision the multiple DUTs in a Testbed setup."
9TIME = "MEDIUM"
10TEST_CATEGORY = "System"
11TEST_CLASS = "provision"
12TEST_TYPE = "Server"
13
14DOC = """
15This is a test used by the provision control segment in autoserv to set the
16testbed-version label of a testbed to the desired setting and reimage the
17testbed to a specific version.
18"""
19
20
21from autotest_lib.client.common_lib import error, utils
22from autotest_lib.client.cros import constants
23
24
25# Autoserv may inject a local variable called value to supply the desired
26# version. If it does not exist, check if it was supplied as a test arg.
27if not locals().get('value'):
28    args = utils.args_to_dict(args)
29    if not args.get('value'):
30        raise error.TestError("No provision value!")
31    value = args['value']
32
33
34def run(machine):
35    testbed = hosts.create_target_machine(machine)
36    job.run_test('provision_TestbedUpdate', host=testbed, value=value)
37
38
39job.parallel_simple(run, machines)
40