diff --git a/RLTest/__main__.py b/RLTest/__main__.py index 342b780..54cce04 100644 --- a/RLTest/__main__.py +++ b/RLTest/__main__.py @@ -429,9 +429,6 @@ def __init__(self): self.require_clean_exit = False self.parallelism = self.args.parallelism - if self.parallelism > 1: - self.args.randomize_ports = True - Defaults.randomize_ports = True def _convertArgsType(self): pass @@ -644,7 +641,8 @@ def execute(self): for test in self.loader: jobs.put(test, block=False) - def run_jobs(jobs, results): + def run_jobs(jobs, results, port): + Defaults.port = port done = 0 while True: try: @@ -688,11 +686,13 @@ def run_jobs(jobs, results): results = Queue() if self.parallelism == 1: - run_jobs(jobs, results) + run_jobs(jobs, results, Defaults.port) else : - processes = [] + processes = [] + currPort = Defaults.port for i in range(self.parallelism): - p = Process(target=run_jobs, args=(jobs,results)) + p = Process(target=run_jobs, args=(jobs,results,currPort)) + currPort += 30 # safe distance for cluster and replicas processes.append(p) p.start() diff --git a/RLTest/env.py b/RLTest/env.py index 090e16b..f32d5ed 100644 --- a/RLTest/env.py +++ b/RLTest/env.py @@ -130,6 +130,7 @@ class Defaults: oss_password = None cluster_node_timeout = None curr_test_name = None + port=6379 def getKwargs(self): kwargs = { @@ -205,6 +206,7 @@ def __init__(self, testName=None, testDescription=None, module=None, self.dmcBinaryPath = expandBinary(dmcBinaryPath) if dmcBinaryPath else Defaults.proxy_binary self.redisEnterpriseBinaryPath = expandBinary(redisEnterpriseBinaryPath) if redisEnterpriseBinaryPath else Defaults.re_binary self.clusterNodeTimeout = clusterNodeTimeout if clusterNodeTimeout else Defaults.cluster_node_timeout + self.port = Defaults.port self.assertionFailedSummary = [] @@ -302,6 +304,7 @@ def getEnvKwargs(self): 'tlsCaCertFile': self.tlsCaCertFile, 'clusterNodeTimeout': self.clusterNodeTimeout, 'tlsPassphrase': self.tlsPassphrase + 'port': self.port } return kwargs diff --git a/RLTest/redis_cluster.py b/RLTest/redis_cluster.py index aab391a..b3ef37f 100644 --- a/RLTest/redis_cluster.py +++ b/RLTest/redis_cluster.py @@ -20,7 +20,7 @@ def __init__(self, **kwargs): self.useTLS = kwargs['useTLS'] self.decodeResponses = kwargs.get('decodeResponses', False) self.tlsPassphrase = kwargs.get('tlsPassphrase', None) - startPort = 20000 + startPort = kwargs.pop('port', 10000) totalRedises = self.shardsCount * (2 if useSlaves else 1) randomizePorts = kwargs.pop('randomizePorts', False) for i in range(0, totalRedises, (2 if useSlaves else 1)):