Browse Source

added caching of health checks so we can hit them heaviy from multiple places without potential concurency problems

Henry Oswald 12 năm trước cách đây
mục cha
commit
98efa96f3e
1 tập tin đã thay đổi với 12 bổ sung và 1 xóa
  1. 12 1
      services/clsi/app.coffee

+ 12 - 1
services/clsi/app.coffee

@@ -41,7 +41,18 @@ app.get "/project/:project_id/output/*", (req, res, next) ->
 app.get "/status", (req, res, next) ->
 	res.send "CLSI is alive\n"
 
-app.get "/health_check", smokeTest.run(require.resolve(__dirname + "/test/smoke/js/SmokeTests.js"))
+resCacher =
+	contentType:(@setContentType)->
+	send:(@code, @body)->
+
+do runSmokeTest = ->
+	logger.log("running smoke tests")
+	smokeTest.run(require.resolve(__dirname + "/test/smoke/js/SmokeTests.js"))({}, resCacher)
+	setTimeout(runSmokeTest, 20 * 1000)
+
+app.get "/health_check", (req, res)->
+	res.contentType(resCacher.setContentType)
+	res.send resCacher.code, resCacher.body
 
 app.use (error, req, res, next) ->
 	logger.error err: error, "server error"