diff --git a/medusa-example.ini b/medusa-example.ini index f57182f6..b97a93a3 100644 --- a/medusa-example.ini +++ b/medusa-example.ini @@ -22,6 +22,7 @@ ; - `/username` containing username ; - `/password` containing password ;cql_k8s_secrets_path = +;prefix_nodetool_command = ;nodetool_username = ;nodetool_password = ;nodetool_password_file_path = diff --git a/medusa/config.py b/medusa/config.py index b7f55d30..7dd28670 100644 --- a/medusa/config.py +++ b/medusa/config.py @@ -36,9 +36,9 @@ CassandraConfig = collections.namedtuple( 'CassandraConfig', - ['start_cmd', 'stop_cmd', 'config_file', 'cql_username', 'cql_password', 'check_running', 'is_ccm', - 'sstableloader_bin', 'nodetool_username', 'nodetool_password', 'nodetool_password_file_path', 'nodetool_host', - 'nodetool_executable', 'nodetool_port', 'certfile', 'usercert', 'userkey', 'sstableloader_ts', + ['prefix_nodetool_command', 'start_cmd', 'stop_cmd', 'config_file', 'cql_username', 'cql_password', 'check_running', + 'is_ccm', 'sstableloader_bin', 'nodetool_username', 'nodetool_password', 'nodetool_password_file_path', + 'nodetool_host', 'nodetool_executable', 'nodetool_port', 'certfile', 'usercert', 'userkey', 'sstableloader_ts', 'sstableloader_tspw', 'sstableloader_ks', 'sstableloader_kspw', 'nodetool_ssl', 'resolve_ip_addresses', 'use_sudo', 'nodetool_flags', 'cql_k8s_secrets_path', 'nodetool_k8s_secrets_path'] ) diff --git a/medusa/nodetool.py b/medusa/nodetool.py index 3b2810f0..4b389bc8 100644 --- a/medusa/nodetool.py +++ b/medusa/nodetool.py @@ -20,6 +20,12 @@ def __init__(self, cassandra_config): nodetool_executable = cassandra_config.nodetool_executable nodetool_flags = cassandra_config.nodetool_flags.split(" ") if cassandra_config.nodetool_flags else [] self._nodetool = [nodetool_executable] + nodetool_flags + if cassandra_config.prefix_nodetool_command is not None: + curr_nodetool = self._nodetool + cmd_string = cassandra_config.prefix_nodetool_command + " &&" + cmd_array = cmd_string.split(" ") + cmd_array += curr_nodetool + self._nodetool = cmd_array if cassandra_config.nodetool_ssl == "true": self._nodetool += ['--ssl'] if cassandra_config.nodetool_username is not None: