打包业务
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,2 +1,3 @@
|
|||||||
/node_modules/
|
/node_modules/
|
||||||
/package-lock.json
|
/package-lock.json
|
||||||
|
/zips/
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
"author": "kubbo",
|
"author": "kubbo",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"express": "^4.17.3",
|
"express": "^4.17.3",
|
||||||
|
"fs-extra": "^10.0.1",
|
||||||
"helmet": "^5.0.2",
|
"helmet": "^5.0.2",
|
||||||
"mysql": "^2.18.1",
|
"mysql": "^2.18.1",
|
||||||
"uuid": "^8.3.2"
|
"uuid": "^8.3.2"
|
||||||
|
|||||||
18
rest/autodeploy/confirmZip.js
Normal file
18
rest/autodeploy/confirmZip.js
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
const dbUtils = require("../../utils/dbUitls");
|
||||||
|
const fse = require("fs-extra");
|
||||||
|
module.exports = {
|
||||||
|
action: "/node/autodeploy/confirmZip",
|
||||||
|
method: "post",
|
||||||
|
execute: (request, response) => {
|
||||||
|
let id = request.query?.id, sql = `select * from node_autodeploy where id='${id}'`
|
||||||
|
dbUtils.query(sql).then(res => {
|
||||||
|
let info = res?.[0]
|
||||||
|
if (info?.id) {
|
||||||
|
response.send({code: 0})
|
||||||
|
} else response.send({code: 1, err: "无法找到git信息"})
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
response.send({code: 1, err: err.sqlMessage})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
30
rest/autodeploy/download.js
Normal file
30
rest/autodeploy/download.js
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
const dbUtils = require("../../utils/dbUitls");
|
||||||
|
const fse = require("fs-extra");
|
||||||
|
module.exports = {
|
||||||
|
action: "/node/autodeploy/download",
|
||||||
|
method: "post",
|
||||||
|
execute: (request, response) => {
|
||||||
|
let id = request.query?.id, sql = `select * from node_autodeploy where id='${id}'`
|
||||||
|
dbUtils.query(sql).then(res => {
|
||||||
|
let info = res?.[0]
|
||||||
|
if (info?.id) {
|
||||||
|
response.send({code: 0})
|
||||||
|
fse.emptyDir('../zips/dist', err => {
|
||||||
|
if (!err) {
|
||||||
|
execute(`cd ../zips&&git clone ${info.git} ./dist`)
|
||||||
|
.then(() => execute(`cd ../zips/dist&&git checkout ${info.branch}`))
|
||||||
|
.then(() => execute(`cd ../zips/dist&&npm i&&npm run build`))
|
||||||
|
.catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
console.log(err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else response.send({code: 1, err: "无法找到git信息"})
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
response.send({code: 1, err: err.sqlMessage})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
39
rest/autodeploy/getZip.js
Normal file
39
rest/autodeploy/getZip.js
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
const dbUtils = require("../../utils/dbUitls");
|
||||||
|
const {exec} = require("child_process");
|
||||||
|
const fse = require('fs-extra')
|
||||||
|
const execute = cmd => new Promise((resolve, reject) => {
|
||||||
|
exec(cmd, (err, stdout) => {
|
||||||
|
if (!err) {
|
||||||
|
console.log(stdout)
|
||||||
|
resolve()
|
||||||
|
} else reject(err)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
module.exports = {
|
||||||
|
action: "/node/autodeploy/getZip",
|
||||||
|
method: "post",
|
||||||
|
execute: (request, response) => {
|
||||||
|
let id = request.query?.id, sql = `select * from node_autodeploy where id='${id}'`
|
||||||
|
dbUtils.query(sql).then(res => {
|
||||||
|
let info = res?.[0]
|
||||||
|
if (info?.id) {
|
||||||
|
response.send({code: 0})
|
||||||
|
fse.emptyDir('../zips/' + info.id, err => {
|
||||||
|
if (!err) {
|
||||||
|
execute(`cd ../zips&&git clone ${info.git} ./${info.id}`)
|
||||||
|
.then(() => execute(`cd ../zips/${info.id}&&git checkout ${info.branch}`))
|
||||||
|
.then(() => execute(`cd ../zips/${info.id}&&npm i&&npm run build`))
|
||||||
|
.catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
console.log(err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else response.send({code: 1, err: "无法找到git信息"})
|
||||||
|
}).catch(err => {
|
||||||
|
console.log(err)
|
||||||
|
response.send({code: 1, err: err.sqlMessage})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user