40 lines
1.2 KiB
Python
Raw Normal View History

2025-06-17 16:50:54 -04:00
"""Create a cluster."""
from aiohttp import ClientSession
2025-06-17 16:50:54 -04:00
from release_tests.support.mttserver import MTTServer
from release_tests.support.translate import Translate
2025-06-17 16:56:04 -04:00
class Cluster:
2025-06-17 16:50:54 -04:00
"""cluster of MoreThanText."""
def __init__(self, num=2, transurl=None, transreplies=None):
2025-06-17 16:50:54 -04:00
"""initialization"""
self.translate = Translate(url=transurl, replies=transreplies)
self.session = None
2025-06-17 16:50:54 -04:00
self.servers = []
for _ in range(num):
self.servers.append(MTTServer())
async def start(self):
"""Start the cluster."""
await self.translate.start()
for server in self.servers:
await server.start()
self.session = ClientSession()
2025-06-17 16:50:54 -04:00
async def stop(self):
"""Stops cluster."""
await self.session.close()
2025-06-17 16:50:54 -04:00
await self.translate.stop()
for server in self.servers:
await server.stop()
async def get(self, url):
"""get from each server in the cluster."""
replies = []
for server in self.servers:
async with self.session.get(f"{server.baseurl}{url}") as resp:
replies.append(resp)
return replies