mirror of
https://github.com/ceph/ceph
synced 2024-12-23 11:54:11 +00:00
64 lines
2.1 KiB
Python
64 lines
2.1 KiB
Python
|
|
||
|
from unittest import case
|
||
|
from tasks.cephfs.cephfs_test_case import CephFSTestCase
|
||
|
from tasks.cephfs.fuse_mount import FuseMount
|
||
|
|
||
|
|
||
|
class TestConfigCommands(CephFSTestCase):
|
||
|
"""
|
||
|
Test that daemons and clients respond to the otherwise rarely-used
|
||
|
runtime config modification operations.
|
||
|
"""
|
||
|
|
||
|
CLIENTS_REQUIRED = 1
|
||
|
MDSS_REQUIRED = 1
|
||
|
|
||
|
def test_client_config(self):
|
||
|
"""
|
||
|
That I can successfully issue asok "config set" commands
|
||
|
|
||
|
:return:
|
||
|
"""
|
||
|
|
||
|
if not isinstance(self.mount_a, FuseMount):
|
||
|
raise case.SkipTest("Test only applies to FUSE clients")
|
||
|
|
||
|
test_key = "client_cache_size"
|
||
|
test_val = "123"
|
||
|
self.mount_a.admin_socket(['config', 'set', test_key, test_val])
|
||
|
out = self.mount_a.admin_socket(['config', 'get', test_key])
|
||
|
self.assertEqual(out[test_key], test_val)
|
||
|
|
||
|
self.mount_a.write_n_mb("file.bin", 1);
|
||
|
|
||
|
# Implicitly asserting that things don't have lockdep error in shutdown
|
||
|
self.mount_a.umount_wait(require_clean=True)
|
||
|
self.fs.mds_stop()
|
||
|
|
||
|
def test_mds_config_asok(self):
|
||
|
test_key = "mds_max_purge_ops"
|
||
|
test_val = "123"
|
||
|
self.fs.mds_asok(['config', 'set', test_key, test_val])
|
||
|
out = self.fs.mds_asok(['config', 'get', test_key])
|
||
|
self.assertEqual(out[test_key], test_val)
|
||
|
|
||
|
# Implicitly asserting that things don't have lockdep error in shutdown
|
||
|
self.mount_a.umount_wait(require_clean=True)
|
||
|
self.fs.mds_stop()
|
||
|
|
||
|
def test_mds_config_tell(self):
|
||
|
test_key = "mds_max_purge_ops"
|
||
|
test_val = "123"
|
||
|
|
||
|
mds_id = self.fs.get_lone_mds_id()
|
||
|
self.fs.mon_manager.raw_cluster_cmd("tell", "mds.{0}".format(mds_id), "injectargs",
|
||
|
"--{0}={1}".format(test_key, test_val))
|
||
|
|
||
|
# Read it back with asok because there is no `tell` equivalent
|
||
|
out = self.fs.mds_asok(['config', 'get', test_key])
|
||
|
self.assertEqual(out[test_key], test_val)
|
||
|
|
||
|
# Implicitly asserting that things don't have lockdep error in shutdown
|
||
|
self.mount_a.umount_wait(require_clean=True)
|
||
|
self.fs.mds_stop()
|