17 Commits

Author SHA256 Message Date
a8755bd3de Add comprehensive documentation and unit tests
Documentation:
- Add detailed README files for all services (auth, character, database, launcher, packet, utils, world)
- Create API documentation for the database service with detailed endpoint specifications
- Document database schema and relationships
- Add service architecture overviews and configuration instructions

Unit Tests:
- Implement comprehensive test suite for database repositories (user, character, session)
- Add gRPC service tests for database interactions
- Create tests for packet service components (bufferpool, connection, packets)
- Add utility service tests (health check, logging, load balancer, redis cache, service discovery)
- Implement auth service user tests
- Add character service tests

Code Structure:
- Reorganize test files into a more consistent structure
- Create a dedicated tests crate for integration testing
- Add test helpers and mock implementations for easier testing
2025-04-09 13:29:53 -04:00
4046f56191 - removed: api-service
- removed: session-service
- updated: moved health check out of consul registration
- updated: get service info to pull the service from the default namespace for the service account
- updated: the rest of the services to be able to handle the new database tables
2025-03-20 22:53:49 -04:00
98b8d412e7 - update: logging system to only show logs from the app and not any 3rd party dependencies 2025-03-19 02:13:02 -04:00
89a1e93dc3 - update: service port env variable to just be named service_port 2025-03-18 11:57:51 -04:00
f4bc414ebd - update: code update to use kube api instead of consul 2025-03-18 02:00:11 -04:00
ae04d2bf5b - add: gRPC health check for gRPC services 2025-03-10 03:56:47 -04:00
b6f2d3f456 - chore: ran cargo fix on the codebase 2025-03-07 21:03:15 -05:00
292a298205 - update: grab version info to register from the cargo package
- update: docker volume to persist the registered service IDs
- update: consul service id function to store the service id in the services folder
2025-01-29 14:25:53 -05:00
cb6ee657f0 - add: Character service can now actually create a character correctly in the database
- add: character db client to allow the character service to talk to the database service
- update: character.proto to make character data shared
2025-01-07 13:41:07 -05:00
9f63a5fd3a - update: moved signal handler into utils crate to make it easier to update
- fix: windows compile issue due to exposed unix signal
2025-01-05 22:49:55 -05:00
00468e9600 - update: generate_service_id function call now takes in the service name so the id file isn't always called utils_service_id.txt 2024-12-27 19:04:54 -05:00
f99fda9e1a - add: character service grpc server impl for getting the character list 2024-12-27 18:58:45 -05:00
e3fb186a44 - fix: when shutting down a docker container, the services would not deregister from consul correctly 2024-12-20 17:42:50 -05:00
3c1f8c40d6 - add: session-service
- move: redis_cache from database service to utils so it can be reused
- update: redis_cache set function to allow creating a key without a lifetime
- update: services to use the new get_or_generate_service_id function
2024-12-20 14:43:25 -05:00
697231965b - update: default listen address is now set to 0.0.0.0 2024-12-14 04:13:02 -05:00
4c7a363814 - update: services now bind to the LISTEN address env instead of the service address (allows the ability to listen on 0.0.0.0 while the service address could be the external address) 2024-12-14 01:53:47 -05:00
51e2fef9df - add: character and world service stubs 2024-12-13 04:46:18 -05:00