xref: /aosp_15_r20/external/autotest/server/site_tests/autoupdate_Basic/control.full (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1# Copyright 2020 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
5AUTHOR = "dhaddock, Chromium OS"
6NAME = "autoupdate_Basic.full"
7TIME = "MEDIUM"
8PURPOSE = "Tests an N-to-N update with Nebraska."
9TEST_CATEGORY = "Functional"
10TEST_CLASS = "platform"
11TEST_TYPE = "server"
12ATTRIBUTES = "suite:bvt-inline, suite:infra_qual, suite:satlab-qual-bvt-inline"
13JOB_RETRIES = 2
14PY_VERSION = 3
15DOC = """
16This tests an N-to-N update. That means it will update to the same version
17that the DUT was provisioned with. This test will be used in the CQ to ensure
18changes don't break autoupdate.
19
20In the lab, a job_repo_url will be passed directly to the test. It contains
21information about the build to use and the IP address of lab cache server to
22download update payloads from. Local runs can use cache servers as well but
23the setup is fairly complicated.
24
25Instead you can use the `running_at_desk` arg when running tests locally to
26avoid the extra setup needed to access cache servers from your workstation.
27`running_at_desk` will copy payloads from gs://chromeos-image-archive/ to a
28public bucket that is accessible without additional configuration.
29
30Example usage:
31
32You can specify the build to AU to for full updates. It should be greater
33than or equal to the version currently on the DUT:
34test_that <DUT> autoupdate_Basic.full --board=<board> --args="running_at_desk=True build=R102-14643.0.0"
35
36If no build is specified, the current version on the DUT will be used:
37test_that <DUT> autoupdate_Basic.full --board=<board> --args="running_at_desk=True"
38"""
39
40from autotest_lib.client.common_lib import utils
41args_dict = utils.args_to_dict(args)
42
43def run(machine):
44    host = hosts.create_host(machine)
45    job.run_test('autoupdate_Basic', host=host, full_payload=True,
46                 **args_dict)
47
48job.parallel_simple(run, machines)
49