webhook-receive
Version:
Pluggable webhook receiver used to trigger selected deployment script
31 lines (27 loc) • 1.14 kB
JavaScript
var _ = require("lodash");
var express = require("express");
var body_parser = require("body-parser");
var logger = require([__dirname, "logger"].join("/"));
function Server(){
this.options = {
port: process.env.PORT || "8888",
host: process.env.HOST || "0.0.0.0"
}
this.server = express();
this.middleware = require([__dirname, "middleware"].join("/"));
this.routes = require([__dirname, "routes"].join("/"))(this.middleware);;
}
Server.prototype.start = function(){
this.server.disable("x-powered-by");
this.server.use(body_parser.json());
this.server.use(this.middleware.init_response);
this.server.use(this.middleware.json_request);
this.server.use(this.middleware.has_body);
this.server.use(this.middleware.has_script);
this.server.use(this.middleware.has_required_query_params);
this.routes.register(this.server);
this.server.use(this.middleware.handle_response);
this.server.listen(this.options.port, this.options.host);
logger.info(["Started webhook-receive on ", this.options.host, ":", this.options.port].join(""));
}
module.exports = Server;