From 1446b4e0efc8ddc3efd9313d9e83fd63661925bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Chojnowski?= Date: Mon, 17 Mar 2025 23:30:08 +0100 Subject: [PATCH] test.py: add --run-internet-dependent-tests Later, we will add upgrade tests, which need to download the previous release of Scylla from the internet. Internet access is a major dependency, so we want to make those tests opt-in for now. (cherry picked from commit d3cb873532947209d5885cfcebefddb0e7b5132b) --- test.py | 2 ++ test/cluster/conftest.py | 2 ++ test/pylib/suite/topology.py | 2 ++ 3 files changed, 6 insertions(+) diff --git a/test.py b/test.py index 956a6a3175..627079fd61 100755 --- a/test.py +++ b/test.py @@ -200,6 +200,8 @@ def parse_cmd_line() -> argparse.Namespace: help='Let me manually run the test executable at the moment this script would run it') parser.add_argument('--byte-limit', action="store", default=randint(0, 2000), type=int, help="Specific byte limit for failure injection (random by default)") + parser.add_argument('--skip-internet-dependent-tests', action="store_true", + help="Skip tests which depend on artifacts from the internet.") scylla_additional_options = parser.add_argument_group('Additional options for Scylla tests') scylla_additional_options.add_argument('--x-log2-compaction-groups', action="store", default="0", type=int, help="Controls number of compaction groups to be used by Scylla tests. Value of 3 implies 8 groups.") diff --git a/test/cluster/conftest.py b/test/cluster/conftest.py index 492df61ec4..5f74893597 100644 --- a/test/cluster/conftest.py +++ b/test/cluster/conftest.py @@ -65,6 +65,8 @@ def pytest_addoption(parser): help='username for authentication') parser.addoption('--auth_password', action='store', default=None, help='password for authentication') + parser.addoption('--skip-internet-dependent-tests', action='store_true', + help='Skip tests which depend on artifacts from the internet') parser.addoption('--artifacts_dir_url', action='store', type=str, default=None, dest='artifacts_dir_url', help='Provide the URL to artifacts directory to generate the link to failed tests directory ' 'with logs') diff --git a/test/pylib/suite/topology.py b/test/pylib/suite/topology.py index 1a5c69d0bc..f7a37d5a35 100644 --- a/test/pylib/suite/topology.py +++ b/test/pylib/suite/topology.py @@ -48,6 +48,8 @@ class TopologyTest(PythonTest): async with get_cluster_manager(self.uname, self.suite.clusters, str(self.suite.log_dir)) as manager: self.args.insert(0, "--tmpdir={}".format(options.tmpdir)) self.args.insert(0, "--manager-api={}".format(manager.sock_path)) + if options.skip_internet_dependent_tests: + self.args.insert(0, "--skip-internet-dependent-tests") if options.artifacts_dir_url: self.args.insert(0, "--artifacts_dir_url={}".format(options.artifacts_dir_url))