Redesign for Stability and Flexibility
2.0.0 (October 23, 2018)
Manticore has been redesigned to perform comprehensive job health checking, be extensible, and be flexible in its configuration while behaving much more consistently than its previous version.
New Features and Breaking Changes
- Uses async/await syntax to make asynchronous functions more understandable and composable
- Job health checking now consists of looking at both allocation and service health statuses
- Includes environment variables to select which security groups are attached to the AWS ELB and the API machines so that the port rules are automatically configured
- Includes environment variables to control enabling encryption for HTTP, WS, and TCP connections
- Includes an advanced health checker that looks at Manticore's job history for the current health state, and will submit jobs on its own to determine health state if no activity is present
- Batches requests under high enough load to reduce stress on the system
- Allows extensibility through listener modules and subscribing to events that the server propagates
- Allows for swappable interface modules which Manticore depends on for base functionality. The job, logger, store, and websocket modules are swappable.
API Changes
- All
v1
routes are removed in favor of thev2
routes GET /
returns the health status of Manticore, or if webpage mode is enabled, a webpage to test API callsGET /health
returns the health status of ManticoreGET /api/v2/job
returns an object containing all available job typesPOST /api/v2/job
queues the client to a waiting list to eventually receive an instance of their job. Also returns a websocket url for the client to connect to for information on their instanceWS /api/v2/job
connects the client to a websocket server using their supplied passcode to receive connection information such as position in the waiting list, and addresses to access their instancesDELETE /api/v2/job
Removes the client from Manticore and shuts down their instances if they exist
If you have any questions about this release or about Manticore in general, please join us in the #manticore channel of our public Slack Organization.