代码拉取完成,页面将自动刷新
'use strict';
const path = require('path');
const utils = require('../utils.js');
const shell = require('shelljs');
const _ = require('underscore');
let root;
const wget = utils.wget;
const fileExist = utils.fileExist;
async function run(app, argv) {
root = process.cwd();
if (!shell.which('node') || !shell.which('npm')) {
app.logger.error(
'[script] [commands] [update-addons] [run] 需要配置 node 和 npm 环境'
);
return false;
}
const nodeVersion = shell.exec('node -v', { silent: true }).substr(1);
if (!utils.compareVersion('7.6', nodeVersion)) {
app.logger.error(
'[script] [commands] [update-addons] [run] node 需要 7.6 或以上版本'
);
return false;
}
const appid = argv.appid;
const downloadType = 'github';
const appPath = root + '/docker/addons/' + appid;
app.logger.info(
'[script] [commands] [update-addons] [run] 开始下载平台文件压缩包...'
);
await wget(appPath, appid, downloadType);
app.logger.info('[script] [commands] [update-addons] [run] 下载完成');
app.logger.info(
'[script] [commands] [update-addons] [run] 开始docker安装...'
);
shell.cd(appPath);
if (!shell.which('docker-compose')) {
app.logger.info(
'[script] [commands] [update-addons] [run] 需要配置docker-compose 环境'
);
}
const dockerRes = shell.exec(
'docker-compose -f ' + DOCKER_COMPOE_FILE + ' up -d ' + appid,
{
silent: false,
}
);
app.logger.info(
'[script] [commands] [update-addons] [run] dockerRes:',
dockerRes
);
app.logger.info(
'[script] [commands] [update-addons] [run] dockerRes.code:',
dockerRes.code
);
}
module.exports = {
setOptions(yargs) {
yargs.option('v', {
alias: 'v',
describe: '部署版本',
});
},
run(app, argv) {
const result = run(app, argv);
result
.then(function() {
app.logger.info('[script] [commands] [update-addons] [run] success!');
return true;
})
.catch(function(err) {
app.logger.info('[script] [commands] [update-addons] [run] failed!');
return false;
});
},
desc: '更新应用插件',
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。