From 7c78f9c1208af746b417c5184abfaddc318926b4 Mon Sep 17 00:00:00 2001 From: Shadi Haidar Date: Fri, 15 Feb 2019 17:38:41 -0500 Subject: Add health and service endpoints 4.0.0 deployment-handler Upgraded cloudify api from 2.1 to 3.1 due to new cloudify /status api Requires upgrading Cloudify to 4.x Added 2 APIs to check health of DH itself and to Inventory and Cloudify Coverage summary Statements : 80.75% ( 994/1231 ) Branches : 57.74% ( 302/523 ) Functions : 81.13% ( 172/212 ) Lines : 81.26% ( 984/1211 ) Issue-ID: DCAEGEN2-1127 Change-Id: Ic851a576eed668016f6cfe956f0f1880a65e1065 Signed-off-by: Shadi Haidar --- deployment-handler.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'deployment-handler.js') diff --git a/deployment-handler.js b/deployment-handler.js index 26074e7..1132af4 100644 --- a/deployment-handler.js +++ b/deployment-handler.js @@ -18,7 +18,7 @@ See the License for the specific language governing permissions and limitations "use strict"; -const API_VERSION = "5.0.0"; +const API_VERSION = "5.1.0"; const http = require('http'); const https = require('https'); @@ -32,6 +32,8 @@ const INFO_PATH = "/"; const DEPLOYMENTS_PATH = "/dcae-deployments"; const POLICY_PATH = "/policy"; const SWAGGER_UI_PATH = "/swagger-ui"; +const HEALTH_CHECK = "/healthcheck"; +const SERVICE_HEALTH = "/servicehealth"; const app = express(); @@ -47,10 +49,11 @@ const set_app = function() { app.use(require('./lib/auth').checkAuth); /* Set up API routes */ - app.use(INFO_PATH, require('./lib/info')); + app.use([HEALTH_CHECK, INFO_PATH], require('./lib/info')); app.use(DEPLOYMENTS_PATH, require('./lib/dcae-deployments')); app.use(POLICY_PATH, require('./lib/policy')); app.use(SWAGGER_UI_PATH, require('./lib/swagger-ui')); + app.use(SERVICE_HEALTH, require('./lib/service-health')); /* Set up error handling */ app.use(require('./lib/middleware').handleErrors); @@ -70,6 +73,8 @@ const start = function(config) { config.apiVersion = API_VERSION; config.apiLinks = { "info" : INFO_PATH, + "internal-health" : HEALTH_CHECK, + "service-health" : SERVICE_HEALTH, "deployments": DEPLOYMENTS_PATH, "policy": POLICY_PATH, "swagger-ui": SWAGGER_UI_PATH @@ -79,6 +84,13 @@ const start = function(config) { log.info(null, "Configuration: " + JSON.stringify(config, utils.hideSecrets)); console.log((new Date()) + ": Configuration: " + JSON.stringify(config, utils.hideSecrets, 2) ); + var cfy = require("./lib/cloudify.js"); + /* Set config for interface library */ + cfy.setAPIAddress(config.cloudify.url); + cfy.setCredentials(config.cloudify.user, config.cloudify.password); + cfy.setLogger(log); + process.mainModule.exports.cfy = cfy; + set_app(); /* Start the server */ -- cgit 1.2.3-korg