Commit Graph

19 Commits

Author SHA1 Message Date
8fe79e3c38 first integration test implemented using testcontainers. 2024-09-08 11:16:49 +02:00
3117fff4ce fixed one concurrency problem in admin.Close() detected when running the
tests 100 times.
2024-09-08 11:16:49 +02:00
f3963288e3 using clientId in the public interface of admin instead of an internal
interface agentConnection.
2024-09-08 11:16:49 +02:00
78e3556787 reintroduced ClientInfo because it does appear to work.
Most likely some error elsewhere caused it not to work previously
2024-09-08 11:16:49 +02:00
0cd0b543a2 multiple clients connecting to multiple agents.
Clients cannot yet be started in parallel. due to subtle issue in test
setup with accept
2024-09-08 11:16:49 +02:00
563c8f2ca7 added leak detection using the goleak library 2024-09-08 11:16:49 +02:00
28b2545163 test for connecting clients and bidirectional communication to agent.
Required lots of rework since the GOBChannel appeared to be reading
ahead of the data it actually needed. Now using more low-level IO
to send the clientId over to the agent instead.
2024-09-08 11:16:49 +02:00
d144a4d230 test for duplicate id and new id gene4ration done 2024-09-08 11:16:49 +02:00
eb6da5da99 test case for single agent registration. 2024-09-08 11:16:49 +02:00
00dd0d17c6 hostkey is now sent from the server to the agent so that at a later
stage we can make the hostkey conrfigurable at the server level instead
of using a fixed hardcoded key.
2024-09-08 11:16:49 +02:00
3574b64842 Server side sorting for the websessions page. No longer using LinkedMap as a result. 2024-09-08 11:16:49 +02:00
1de3c90146 Now using a map of ClientId to clientConnection which is more efficient for deleting clients. 2024-09-08 11:16:49 +02:00
9f12b7bea4 Separated out the metadata about the agents and clients from the agentConnection and clientConnection objects. Now, the state does not need to be copied anymore when sending notifications.
The matchmaker uses copy on write every time a new agent or client connects or disconnects.
2024-09-08 11:16:49 +02:00
fc7977f7bb now using maps of Guid to Agent/Client in the state, working towards the definitive solution.
Using LinkedMap that preserves insertion order for the implementation and also added unit tests for that.
2024-09-08 11:16:49 +02:00
556315906d introdcution of typesafe ids. 2024-09-08 11:16:49 +02:00
4f06fd71e0 renamed modukle name so that pkgsite will work. 2024-09-08 11:16:49 +02:00
061fabfd07 Addes agent address and client address to the client and agent info. 2024-09-08 11:16:49 +02:00
ad72c41347 ClientConnection no longer has public fields. 2024-09-08 11:16:49 +02:00
1c92fcb03e much more clean handling of concurrency in the converge server by separating the administration from the matchmaking by putting admin in a separate package. 2024-09-08 11:16:49 +02:00