51 lines
1.8 KiB
Plaintext
51 lines
1.8 KiB
Plaintext
# Copyright 2018 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 = "dhaddock, Chromium OS"
|
|
NAME = "autoupdate_P2P.local"
|
|
PURPOSE = "Test autoupdate via peer to peer(P2P) locally."
|
|
TIME = "MEDIUM"
|
|
TEST_CATEGORY = "Functional"
|
|
TEST_CLASS = "platform"
|
|
TEST_TYPE = "server"
|
|
|
|
|
|
DOC = """
|
|
This tests autoupdate between two devices via peer to peer.
|
|
|
|
Use this control file to debug the test at your desk. The test requires the
|
|
lab to schedule and provision two DUTs before the test begins. We will need
|
|
to do that setup manually before running the test.
|
|
|
|
Steps to run from your desk:
|
|
1. Lease two DUTs in the lab. They need to be the same make/model.
|
|
2. ssh into both and make sure they can ping each other.
|
|
3. Provision both DUTs to the same build. You can use cros flash to do this.
|
|
4. Pass two args to test_that: host2, job_repo_url.
|
|
|
|
A job_repo_url is a URL passed to each test that points to the autotest
|
|
packages. The AU tests use that url to figure out the devserver to use for the
|
|
test. When you are running locally you need to pass in a job_repo_url. An
|
|
example is:
|
|
http://100.115.245.194:8082/static/caroline-release/R82-12887.0.0/autotest/packages
|
|
|
|
test_that <hostname>.cros autoupdate_P2P.local --args="host2=<hostname>.cros job_repo_url=<job_repo_url>"
|
|
|
|
"""
|
|
|
|
import logging
|
|
from autotest_lib.server import utils
|
|
|
|
args_dict = utils.args_to_dict(args)
|
|
|
|
def run(machine):
|
|
if all(arg in args_dict for arg in ['host2', 'job_repo_url']):
|
|
host1 = hosts.create_host(machine)
|
|
host2 = hosts.create_host(args_dict.get('host2'))
|
|
job.run_test('autoupdate_P2P', hosts=[host1, host2], job_repo_url=args_dict.get('job_repo_url'))
|
|
else:
|
|
logging.info('Please provide both "host2" and "job_repo_url" args to test_that.')
|
|
|
|
job.parallel_simple(run, machines)
|