npm i publish-tool-jump --dev
-
package.json 的 scripts 中添加
"scripts": { "publish:jump": "publishJump publish" }
-
在根目录下添加 publish.config.js
module.exports = { option: { dev: { remoteDir: "", //服务器地址 host: "", //目标服务器的IP地址 username: "", //目标服务器的用户名称 hostjump: "", //跳板机的IP地址 usernamejump: "", //跳板机的用户名称 portjump: 22, //端口 script: `npm run build:dev1`, // 执行打包命令 npm run build localDir: "dist", // 本地上传的文件夹 ./dist/dev port: 22, //端口 isJump: true, //是否选择跳板机模式 }, dev2: { remoteDir: "", //服务器地址 host: "", //目标服务器的IP地址 username: "", //目标服务器的用户名称 passdword: "", //密码 script: ``, // 执行打包命令 npm run build localDir: "", // 本地上传的文件夹 ./dist/dev isJump: false, //node-ssh 上传 }, }, logs: false, // 日志 };
-
执行命令
publishJump:publishJump publish
isJump: true
唤起指令面板 输入两次密码(也可复制密码)
isJump: false
node-ssh 上传 可以有 passdword 字段
增加通过 ssh 连接目标服务器 isJump: false node-ssh 执行对应打包命令=> 使用 node-ssh 连接服务器 => 上传本地 dist 目录下的文件
isJump: true 执行对应打包命令=> 创建.sh 执行文件 => 执行文件.sh =>scp 开启上传 =>唤起 cmd 面板=>输入两次服务器密码 => 上传本地 dist 目录下的文件