Rollbar handles any unhandled exception, express route error, and any log entry of level warning or error. It notifies our slack ops channel and is integrated with github to allow us to create issues directly from reported errors.
We use DigitalOcean to host our build tools (namely Drone.io) for a cheap CI and CD server.
We'll be using this to host the server application during alpha phase.
Drone acts as our CI service for testing our application. We also use it as a deployment server for building docker images for production once tests pass on the master branch. The docker image acts as a deployment artifact that Convox can use to deploy.
Our client platform utilizes Electron which is also built and pushed to S3 for download.
We use it in development for the main application and is responsible for generating the Electron binary artifacts for the client application.
Convox is our deployment arm of all backend application services into our AWS ECS cluster.
Our application began as an HTML5 browser game, however we decided to leverage certain native parts of desktop applications by wrapping our client code into Electron. This also allowed us to not have to worry about compatibility across all the various browsers.
Since our production deployment makes use of the Convox platform, we use this to describe the containers to be deployed via Convox to AWS ECS.
We also use this for our local dev environment (previously used vagrant with chef).
Rabbit acts as our coordinator for all actions that happen during game time. All worker containers connect to rabbit in order to receive game events and emit their own events when applicable.
All build, CI, and github notifications go to our dev channel. This also is where we discuss and share documents.