Skip to content

Commit ed8149a

Browse files
committed
Add parameter to allow starting a cluster with TLS, that does not use TLS for inter-shard communication
1 parent b6bc69c commit ed8149a

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,10 @@ optional arguments:
178178
--dualTLS Initialize both TLS and non-TLS ports for all shards.
179179
The non-TLS ports will be the TLS ports + 1500.
180180
Only effective when TLS is active (see `useTLS`).
181+
(default: False)
182+
--tlsCluster Enable TLS for cluster communication. Only effective
183+
when TLS is active (see `useTLS`) and when running
184+
in cluster mode. (default: True)
181185
182186
```
183187

RLTest/env.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,7 @@ class Defaults:
153153
protocol = 2
154154
redis_config_file = None
155155
dualTLS = False
156+
tlsCluster = True
156157

157158
def getKwargs(self):
158159
kwargs = {
@@ -201,7 +202,7 @@ def __init__(self, testName=None, testDescription=None, module=None,
201202
tlsCaCertFile=None, tlsPassphrase=None, logDir=None, redisBinaryPath=None, dmcBinaryPath=None,
202203
redisEnterpriseBinaryPath=None, noDefaultModuleArgs=False, clusterNodeTimeout = None,
203204
freshEnv=False, enableDebugCommand=None, enableModuleCommand=None, enableProtectedConfigs=None, protocol=None,
204-
terminateRetries=None, terminateRetrySecs=None, redisConfigFile=None, dualTLS=False):
205+
terminateRetries=None, terminateRetrySecs=None, redisConfigFile=None, dualTLS=False, tlsCluster=True):
205206

206207
self.testName = testName if testName else Defaults.curr_test_name
207208
if self.testName is None:
@@ -255,6 +256,8 @@ def __init__(self, testName=None, testDescription=None, module=None,
255256

256257
self.dualTLS = dualTLS if dualTLS else Defaults.dualTLS
257258

259+
self.tlsCluster = tlsCluster if tlsCluster else Defaults.tlsCluster
260+
258261
if not freshEnv and Env.RTestInstance and Env.RTestInstance.currEnv and self.compareEnvs(Env.RTestInstance.currEnv):
259262
self.envRunner = Env.RTestInstance.currEnv.envRunner
260263
else:
@@ -370,7 +373,8 @@ def getEnvKwargs(self):
370373
'terminateRetries': self.terminateRetries,
371374
'terminateRetrySecs': self.terminateRetrySecs,
372375
'redisConfigFile': self.redisConfigFile,
373-
'dualTLS': self.dualTLS
376+
'dualTLS': self.dualTLS,
377+
'tlsCluster': self.tlsCluster,
374378
}
375379
return kwargs
376380

RLTest/redis_std.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None,
2323
useAof=False, useRdbPreamble=True, debugger=None, sanitizer=None, noCatch=False, noLog=False, unix=False, verbose=False, useTLS=False,
2424
tlsCertFile=None, tlsKeyFile=None, tlsCaCertFile=None, clusterNodeTimeout=None, tlsPassphrase=None, enableDebugCommand=False, protocol=2,
2525
terminateRetries=None, terminateRetrySecs=None, enableProtectedConfigs=False, enableModuleCommand=False, loglevel=None,
26-
redisConfigFile=None, dualTLS=False
26+
redisConfigFile=None, dualTLS=False, tlsCluster=True
2727
):
2828
self.uuid = uuid.uuid4().hex
2929
self.redisBinaryPath = os.path.expanduser(redisBinaryPath) if redisBinaryPath.startswith(
@@ -72,6 +72,7 @@ def __init__(self, redisBinaryPath, port=6379, modulePath=None, moduleArgs=None,
7272
self.terminateRetrySecs = terminateRetrySecs
7373
self.redisConfigFile = redisConfigFile
7474
self.dualTLS = dualTLS
75+
self.tlsCluster = tlsCluster
7576

7677
if port > 0:
7778
self.port = port
@@ -230,7 +231,7 @@ def createCmdArgs(self, role):
230231
# creating .cluster.conf in /tmp as lock fails on NFS
231232
cmdArgs += ['--cluster-enabled', 'yes', '--cluster-config-file', '/tmp/' + self._getFileName(role, '.cluster.conf'),
232233
'--cluster-node-timeout', '5000' if self.clusterNodeTimeout is None else str(self.clusterNodeTimeout)]
233-
if self.useTLS:
234+
if self.useTLS and self.tlsCluster:
234235
cmdArgs += ['--tls-cluster', 'yes']
235236
if self.useAof:
236237
cmdArgs += ['--appendonly', 'yes']

0 commit comments

Comments
 (0)