2015-12-14 14:10:37 -05:00
|
|
|
module.exports.setup = (app) ->
|
2015-12-29 00:03:43 -05:00
|
|
|
app.get '/db/products', require('./db/product').get
|
|
|
|
|
|
|
|
app.get '/healthcheck', (req, res) ->
|
|
|
|
try
|
|
|
|
async = require 'async'
|
|
|
|
User = require '../users/User'
|
|
|
|
async.waterfall [
|
|
|
|
(callback) ->
|
|
|
|
User.find({}).limit(1).exec(callback)
|
|
|
|
, (last, callback) ->
|
|
|
|
return("No users found") unless callback.length > 0
|
|
|
|
User.findOne(slug: 'healthcheck').exec(callback)
|
|
|
|
, (hcuser, callback) ->
|
|
|
|
# Create health check user if it doesnt exist
|
|
|
|
return callback(null, hcuser) if hcuser
|
|
|
|
user = new User
|
|
|
|
anonymous: false
|
|
|
|
name: 'healthcheck'
|
|
|
|
nameLower: 'healthcheck'
|
|
|
|
slug: 'healthcheck'
|
|
|
|
email: 'rob+healthcheck@codecombat.com'
|
|
|
|
emailLower: 'rob+healthcheck@codecombat.com'
|
|
|
|
user.set 'testGroupNumber', Math.floor(Math.random() * 256) # also in app/core/auth
|
|
|
|
user.save (err) ->
|
|
|
|
return callback(err) if err
|
|
|
|
callback(null, user)
|
|
|
|
|
|
|
|
, (hcuser, callback) ->
|
|
|
|
activity = hcuser.trackActivity 'healthcheck', 1
|
|
|
|
hcuser.update {activity: activity}, callback
|
|
|
|
], (err) ->
|
|
|
|
return res.status(500).send(err.toString()) if err
|
|
|
|
res.send("OK")
|
|
|
|
catch error
|
|
|
|
res.status(500).send(error.toString())
|