resilient-server v0.1.1
resilient-server  
  
 
Dummy HTTP server fully compatible with the Resilient specification discovery protocol.
The stored servers are persisted as volatile data (in-memory). After a server restart is required data re-registering
It was designed to be used for testing, demo and development proposals with resilient based applications
Additionally it implements full CORS support for direct browser consumption
Installation
You must have node.js already installed
Install the package
$ npm install -g resilient-serverStart the server
$ resilient-server -p 8080 -h 0.0.0.0 --api-key awesomeShow the help
$ resilient-server --helpHTTP API
GET /:appName
Get a list of servers for the given application service, optionally specifiying the app semantic version
Request
curl -i http://localhost:8080/my-app-api?version=1.0.0Response
Valid response
HTTP/1.1 200 OK
Content-Type: application/json
Server: resilient-server 0.1.0
[
  "http://api1.server.me",
  "http://api2.server.me",
  "http://api3.server.me"
]Missing app name
HTTP/1.1 404 Not FoundGET /all
Get the complete list of registered apps and servers URIs
Request
curl -i http://localhost:8080/allResponse
Valid response
HTTP/1.1 200 OK
Content-Type: application/json
Server: resilient-server 0.1.0
[
  {
    "name": "app",
    "updated": 1415144314038,
    "servers": [
      "http://api2.server.me",
      "http://api2.server.me",
      "http://api3.server.me"
    ]
  }
]Missing app name
HTTP/1.1 404 Not FoundPOST|PUT /:appName
Update the servers for the given application service, optionally specifiying the app semantic version
Note: this service could require an API key token, if it's was defined via --api-token flag
Request
curl -i -H "Accept: application/json" \
  -H "API-Token: awesome" \
  -H "Version: 1.0.0" \
  -X POST -d '["http://newapi.server.com"]' \
  http://localhost:8080/my-app-apiResponse
Valid response
HTTP/1.1 204 No ContentInvalid response
HTTP/1.1 400 Bad RequestDELETE /:appName
Removes the servers of a given app from the registry, optionally specifiying the app semantic version
Request
curl -i -H "Accept: application/json" \
  -H "API-Token: awesome" \
  -H "Version: 1.0.0" \
  -X DELETE  \
  http://localhost:8080/my-app-apiResponse
Valid response
HTTP/1.1 204 No ContentInvalid response
HTTP/1.1 404 Not FoundDevelopment
You must have installed node.js >= 0.10
Clone this repository
git clone https://github.com/h2non/resilient-server.git && cd resilient-serverInstall runtime and developmennt dependencies
npm installRun tests
grunt testRun the server
./bin/resilient-server --port 8080 --debugShow help
./bin/resilient-server --helpRun as a service (using forever)
forever -m 5 ./bin/resilient-serverLicense
MIT - Tomas Aparicio