Go microservice for managing game execution in Kubernetes clusters.
This Go service handles:
- Game execution as Kubernetes jobs
- Container log retrieval
- S3 integration for replay storage
- RabbitMQ message processing
Install Go 1.25+:
brew install goor download from https://golang.org/dl/
-
Set up environment variables:
cp .env.example .env.local
Edit
.env.localwith your configuration (see Environment Variables below). -
Generate API code from the OpenAPI spec:
make generate
-
Run development server:
make run
- Build:
make build - Test:
make test - Clean:
make clean
RABBITMQ- RabbitMQ connection URLRABBITMQ_HTTP- RabbitMQ HTTP management URLS3_ENDPOINT- S3-compatible storage endpointS3_BUCKET- S3 bucket name for replay storageS3_ACCESS_KEY_ID- S3 access keyS3_SECRET_ACCESS_KEY- S3 secret key
ADDR- Server address (default: :9000)NAMESPACE- Kubernetes namespace (default: coregame)S3_REGION- S3 region (default: eu)KUBE_PATH- Path to kubeconfig file