Files
scylladb/test/cluster/test_config.py
Artsiom Mishuta d1198f8318 test.py: rename topology_custom folder to cluster
rename topology_custom folder to cluster
as it contains not only topology test cases
2025-03-04 10:32:44 +01:00

42 lines
1.6 KiB
Python

# Copyright 2025-present ScyllaDB
#
# SPDX-License-Identifier: LicenseRef-ScyllaDB-Source-Available-1.0
import logging
import pytest
import requests
import sys
import threading
import time
from test.pylib.manager_client import ManagerClient
from test.pylib.rest_client import read_barrier
from test.pylib.util import wait_for
async def wait_for_config(manager, server, config_name, value):
async def config_value_equal():
await read_barrier(manager.api, server.ip_addr)
resp = await manager.api.get_config(server.ip_addr, config_name)
logging.info(f"Obtained config via REST api - config_name={config_name} value={value}")
if resp == value:
return True
return None
await wait_for(config_value_equal, deadline=time.time() + 60)
@pytest.mark.asyncio
async def test_non_liveupdatable_config(manager):
server = await manager.server_add()
not_liveupdatable_param = "auto_bootstrap"
liveupdatable_param = "compaction_enforce_min_threshold"
logging.info("Verify initial (default) config values")
await wait_for_config(manager, server, not_liveupdatable_param, True)
await wait_for_config(manager, server, liveupdatable_param, False)
logging.info("Change config values - verify only liveupdatable config is changed")
await manager.server_update_config(server.server_id, not_liveupdatable_param, False)
await manager.server_update_config(server.server_id, liveupdatable_param, True)
await wait_for_config(manager, server, liveupdatable_param, True)
await wait_for_config(manager, server, not_liveupdatable_param, True)