功能更新

1. 添加自定义端口设置
2. 替换压缩依赖,解决windos下文件夹打包路径错误问题
This commit is contained in:
KeiferJu 2020-06-09 17:44:49 +08:00
parent e49aaae9ca
commit 67d0f7f94c
4 changed files with 18 additions and 6 deletions

View File

@ -49,6 +49,9 @@ npm run deploy
如果密码登录,填入密码,并且不能设置PRIVATE_KEY参数 如果密码登录,填入密码,并且不能设置PRIVATE_KEY参数
- PORT:
端口
#### 扩展配置 #### 扩展配置
- CLEAR_OLDFILES: - CLEAR_OLDFILES:

View File

@ -6,7 +6,8 @@ module.exports = Object.freeze({
// PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa', // PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa',
PASSWORD: '123456', //方式二 用密码连接服务器 PASSWORD: '123456', //方式二 用密码连接服务器
PATH: '/var/local', // 需要上传的服务器目录地址 如 /usr/local/nginx/html PATH: '/var/local', // 需要上传的服务器目录地址 如 /usr/local/nginx/html
OUTPUT_PATH: 'dist' // 需要上传文件夹路径,默认dist OUTPUT_PATH: 'dist', // 需要上传文件夹路径,默认dist
PORT: 22
}, },
production: {//正式 production: {//正式
SERVER_PATH: 'xxx', SERVER_PATH: 'xxx',
@ -15,7 +16,8 @@ module.exports = Object.freeze({
// PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa', // PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa',
PASSWORD: 'xxx', PASSWORD: 'xxx',
PATH: '/var/local', // 需要上传的服务器目录地址 如 /usr/local/nginx/html PATH: '/var/local', // 需要上传的服务器目录地址 如 /usr/local/nginx/html
OUTPUT_PATH: 'dist' // 需要上传文件夹路径,默认dist OUTPUT_PATH: 'dist', // 需要上传文件夹路径,默认dist
PORT: 22
} }
}) })
@ -27,6 +29,7 @@ module.exports = Object.freeze({
// SSH_USER: 服务器用户名 // SSH_USER: 服务器用户名
// PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa' 用秘钥登录服务器(推荐)的秘钥地址, private 本机私钥文件地址(需要在服务器用户目录 一般是 /root/.ssh/authorized_keys 配置公钥 并该文件权限为 600, (.ssh文件夹一般默认隐藏) // PRIVATE_KEY: 'C:/Users/Html5/.ssh/id_rsa' 用秘钥登录服务器(推荐)的秘钥地址, private 本机私钥文件地址(需要在服务器用户目录 一般是 /root/.ssh/authorized_keys 配置公钥 并该文件权限为 600, (.ssh文件夹一般默认隐藏)
// PASSWORD: 密码 // PASSWORD: 密码
// PORT: 端口
/** /**
* 扩展配置 * 扩展配置

View File

@ -19,7 +19,7 @@
"homepage": "https://github.com/KeiferJu/auto-deploy#readme", "homepage": "https://github.com/KeiferJu/auto-deploy#readme",
"devDependencies": { "devDependencies": {
"chalk": "^3.0.0", "chalk": "^3.0.0",
"compressing": "^1.5.0", "compressing2": "^1.5.1",
"inquirer": "^7.1.0", "inquirer": "^7.1.0",
"node-ssh": "^8.0.0", "node-ssh": "^8.0.0",
"ora": "^4.0.3", "ora": "^4.0.3",

View File

@ -4,7 +4,7 @@ const spinner_style = require('./spinner_style') //加载动画样式
const shell = require('shelljs') // 执行shell命令 const shell = require('shelljs') // 执行shell命令
const node_ssh = require('node-ssh') // ssh连接服务器 const node_ssh = require('node-ssh') // ssh连接服务器
const inquirer = require('inquirer') //命令行交互 const inquirer = require('inquirer') //命令行交互
const zipFile = require('compressing') // 压缩zip const zipFile = require('compressing2') // 压缩zip
const fs = require('fs') // nodejs内置文件模块 const fs = require('fs') // nodejs内置文件模块
const path = require('path') // nodejs内置路径模块 const path = require('path') // nodejs内置路径模块
const CONFIG = require('./config') // 配置 const CONFIG = require('./config') // 配置
@ -48,12 +48,14 @@ const connectSSH = async () => {
host: config.SERVER_PATH, host: config.SERVER_PATH,
username: config.SSH_USER, username: config.SSH_USER,
privateKey: config.PRIVATE_KEY, //秘钥登录(推荐) 方式一 privateKey: config.PRIVATE_KEY, //秘钥登录(推荐) 方式一
tryKeyboard: true tryKeyboard: true,
port: config.PORT
} : { } : {
host: config.SERVER_PATH, host: config.SERVER_PATH,
username: config.SSH_USER, username: config.SSH_USER,
password: config.PASSWORD, // 密码登录 方式二 password: config.PASSWORD, // 密码登录 方式二
tryKeyboard: true tryKeyboard: true,
port: config.PORT
} }
await SSH.connect(options); await SSH.connect(options);
@ -245,6 +247,10 @@ inquirer
config.OUTPUT_PATH = 'dist'; config.OUTPUT_PATH = 'dist';
} }
if (!config.PORT) {
config.PORT = 22;
}
const names = config.OUTPUT_PATH.split('/'); const names = config.OUTPUT_PATH.split('/');
if (names[names.length - 1]) { if (names[names.length - 1]) {
config.OLD_NAME = names[names.length - 1]; config.OLD_NAME = names[names.length - 1];