diff --git a/src/websocket/custom/getZip.js b/src/websocket/custom/getZip.js index ddd38cd..1ee120e 100644 --- a/src/websocket/custom/getZip.js +++ b/src/websocket/custom/getZip.js @@ -61,21 +61,22 @@ const handleZip = (id, ws) => { const {signal} = controller; const progress = new counter(`正在处理 ${info.name} 的打包工作...`) if (info.type == 'web') { - let {name, version, dist} = info - dist = dist?.trim() || `${name}_v${version}` + const {name, version, dist} = info + const deploy = dist?.trim() || `${name}_v${version}` const buildConfig = { web: {task: "devops-web", token: 'fLeOGSVIRs405Me'}, }[info.type] startUpdateSql() .then(() => progress.set(30, id)) + .then(() => fse.emptyDir(dist || `../zips/${deploy}`)) .then(() => http.get(`/view/devops/job/${buildConfig.task}/buildWithParameters`, - {params: {token: buildConfig.token, pid: id, dist}})) - .then(() => http.get(`/view/devops/job/${buildConfig.task}/api/json`).then(res => res.data?.lastBuild.number||1)) + {params: {token: buildConfig.token, pid: id, deploy}})) + .then(() => http.get(`/view/devops/job/${buildConfig.task}/api/json`).then(res => res.data?.lastBuild.number || 1)) .then(currentJob => new Promise((resolve, reject) => { jobs[id] = {task: buildConfig.task, build: currentJob} const timer = setInterval(() => { http.get(`/view/devops/job/${buildConfig.task}/${currentJob}/api/json`).then(res => { - if (res.data.result == 'SUCCESS') { + if (['SUCCESS', 'UNSTABLE'].includes(res.data.result)) { clearInterval(timer) resolve(endUpdateSql()) } else if (res.data.result == 'ABORTED') {