一款提升前端开发和验证问题的自动化部署工具,小小流水线的第一步!
- 自动编译打包
- 自动连接远程服务器
- 自动上传本地包
- 自动备份环境上已有包
- 替换包完毕后,自动执行预设shell命令
- 任意版本回滚
能偷会儿懒,咳咳~
- 命令行一键操作,让验证环境问题和本地一样简单
- 前端无需xshell/xftp等工具,无需接触linux服务器
- 操作安全,干啥之前咱先备份!
- 好的框架支持扩展,目前暂不支持!
- 希望不仅成为自动化部署工具,也可以是团队协同规范的统一工具(依赖扩展)。
TODO:已经在考虑中
,支持loader,以插件形式让自动化部署过程中可做的事情更加丰富,但后续始终会围绕deploy
进行。
npm install missyt-deploy -g
#安装成功后,执行
mdeploy
mdeploy -V #查看当前工具版本
mdeploy -h #查看帮助
mdeploy init #初始化环境
mdeploy list #查看当前项目环境列表
mdeploy run #执行部署,无参数会让其选择执行环境
mdeploy run -e <env> #<env> 指定环境部署
cd your project
mdeploy init
module.exports = {
projectName: "mdeploy",
envList: [
{
value: "dev", //环境名称
name: "开发环境(dev)", //环境描述
script: "npm run build:dev", //打包脚本,你项目packjson里script中配置的打包脚本
remotePath: "/opt/xxx/xxx/projectName", //远程服务器部署前端项目的目录
localPath: "./dist", //本地构建目录
host: "x.x.x.x", //远程服务器地址
port: 22, //远程服务器端口
username: "root", //远程服务器用户名
password: "*******", //远程服务器密码
privateKey: "", //远程服务器私钥
passphrase: "", //远程服务器私钥密码
shellAfter: ["chown -R user:usre ./projectName"], //部署后执行的脚本
},
],
};
不指定环境会读取配置文件中所有环境列表,让其选择。 按enter选择一个环境即可
mdeploy run # 无参数
Tips:批量环境部署存在一定风险,所以设计时仅支持单选一个环境部署。
#指定dev环境 dev => 为配置文件中 envList[index].value的值
mdeoloy run -e dev
mdeploy list
mdeploy back
任何异常都会终端程序往下执行