|
|
|
@ -9,6 +9,12 @@ const express = require('express'); |
|
|
|
|
const routes = require('./routes'); |
|
|
|
|
const http = require('http'); |
|
|
|
|
const path = require('path'); |
|
|
|
|
const serveFavicon = require('serve-favicon'); |
|
|
|
|
const morgan = require('morgan'); |
|
|
|
|
const bodyParser = require('body-parser'); |
|
|
|
|
const methodOverride = require('method-override'); |
|
|
|
|
const serveStatic = require('serve-static'); |
|
|
|
|
const errorhandler = require('errorhandler'); |
|
|
|
|
|
|
|
|
|
const app = express(); |
|
|
|
|
|
|
|
|
@ -19,28 +25,31 @@ app.set('view engine', 'jade'); |
|
|
|
|
app.set('gitpath', 'M:/g'); |
|
|
|
|
app.set('tmpcodepath', 'M:/c'); |
|
|
|
|
app.set('releasepath', 'M:/r'); |
|
|
|
|
app.use(express.favicon()); |
|
|
|
|
app.use(express.logger('dev')); |
|
|
|
|
app.use(express.json({limit: '10mb'})); |
|
|
|
|
app.use(express.urlencoded()); |
|
|
|
|
app.use(express.methodOverride()); |
|
|
|
|
app.use(app.router); |
|
|
|
|
app.use(express.static(path.join(__dirname, 'public'))); |
|
|
|
|
app.use(serveFavicon(path.join(__dirname, 'public/images/favicon.png'))); |
|
|
|
|
app.use(morgan('dev')); |
|
|
|
|
app.use(bodyParser.json({ limit: '10mb' })); |
|
|
|
|
app.use(bodyParser.urlencoded({ extended: false })); |
|
|
|
|
app.use(methodOverride()); |
|
|
|
|
app.use(serveStatic(path.join(__dirname, 'public'))); |
|
|
|
|
|
|
|
|
|
// development only
|
|
|
|
|
if ('development' === app.get('env')) { |
|
|
|
|
app.use(express.errorHandler()); |
|
|
|
|
app.use(errorhandler()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
app.get('/', routes.index); |
|
|
|
|
app.post('/github/postreceive', routes.postreceive); |
|
|
|
|
app.get('/github/postreceive', (req, res) => res.send("Only automated POST requests are allowed for postreceive route")); |
|
|
|
|
app.get('/manual', routes.manual.get); |
|
|
|
|
app.post('/manual', routes.manual.post); |
|
|
|
|
app.get('/status/:owner/:reponame/:branch/:rev?', routes.status.page); |
|
|
|
|
app.get('/pos-github.payonline.ru/*', routes.status.pageFromGithub); |
|
|
|
|
app.get('/status.svg', routes.status.image); |
|
|
|
|
app.get('/release/:owner/:reponame/:branch/:rev', routes.release); |
|
|
|
|
app.get('/artifact/:owner/:reponame/:branch/:rev/*', routes.artifact); |
|
|
|
|
app.route('/').get(routes.index); |
|
|
|
|
app.route('/github/postreceive') |
|
|
|
|
.post(routes.postreceive) |
|
|
|
|
.get((req, res) => res.send("Only automated POST requests are allowed for postreceive route")); |
|
|
|
|
|
|
|
|
|
app.route('/manual') |
|
|
|
|
.get(routes.manual.get) |
|
|
|
|
.post(routes.manual.post); |
|
|
|
|
|
|
|
|
|
app.route('/status/:owner/:reponame/:branch/:rev?').get(routes.status.page); |
|
|
|
|
app.route('/pos-github.payonline.ru/*').get(routes.status.pageFromGithub); |
|
|
|
|
app.route('/status.svg').get(routes.status.image); |
|
|
|
|
app.route('/release/:owner/:reponame/:branch/:rev').get(routes.release); |
|
|
|
|
app.route('/artifact/:owner/:reponame/:branch/:rev/*').get(routes.artifact); |
|
|
|
|
|
|
|
|
|
http.createServer(app).listen(app.get('port'), () => console.log('Express server listening on port ' + app.get('port'))); |
|
|
|
|