master
pan 4 years ago
parent 28ecf02db9
commit 847ad1822d
  1. 1
      package.json
  2. 34
      routes/index.js

@ -10,6 +10,7 @@
"debug": "~2.6.9",
"express": "~4.16.1",
"http-errors": "~1.6.3",
"moment": "^2.29.1",
"morgan": "~1.9.1",
"pug": "2.0.0-beta11"
}

@ -1,27 +1,47 @@
var express = require('express');
var router = express.Router();
var moment = require('moment')
const {spawn} = require('child_process');
const _info='info'
const _error='error'
function log(param,message){
console[param](`${moment().format('yyyy-MM-DD HH:mm:ss')}:${message}`)
}
function info(message){
log(_info,message)
}
function error(message){
log(_error,message)
}
//web钩子事件
//git@gogs.kirito.cool:panqihua/RiskCloudMock.git push事件
const {spawn} = require('child_process');
router.post('/server', function(req, res, next) {
const updated_at=req.body.repository.updated_at
console.info('调用自动部署命令')
info('调用自动部署命令')
const promise = new Promise((resolve, reject) => {
const spawnObj = spawn('updateRisk', ['RiskCloudMock'], {encoding: 'utf-8'});
spawnObj.stdout.on('data', function(chunk) {
console.log(chunk.toString());
info(chunk.toString());
});
spawnObj.stderr.on('data', (data) => {
console.error(data);
error(data);
});
spawnObj.on('close', function(code) {
console.log('close code : ' + code);
info('close code : ' + code);
})
spawnObj.on('exit', (code) => {
console.log('exit code : ' + code);
info('exit code : ' + code);
resolve(true)
})
})
@ -32,7 +52,7 @@ router.post('/server', function(req, res, next) {
//部署完毕事件
router.get('/finsh', function(req, res, next) {
console.info(`仓库代码${req.query.name}部署成功`)
info(`仓库代码${req.query.name}部署成功`)
res.json({message:`仓库代码${req.query.name}部署成功`})
});

Loading…
Cancel
Save