sftp-uploader
sftp-uploader
是一款基于 ssh2-sftp-client
封装的文件上传插件,支持 webpack
及 vite
,可以实现将打包好的项目文件一键上传到指定的sftp服务器目录,支持集成为webpack
或vite
插件或单独
使用,支持自动创建上传目录。
Install
$ yarn add sftp-uploader
$ npm i sftp-uploader
注意
此版本仅适用于 node "^18.0.0 || >=20.0.0"
低版本node请下载1.x版本
配置
const path = require('path')
const SftpUploader = require('sftp-uploader')
const sftp = SftpUploader({
dir: path.join(__dirname, 'dist/'),
url: '******',
host: '*****',
port: '*****',
username: '*****',
password: '*****',
delay: 0,
uploadFilter(file) => file.name.endsWith(.gz),
deleteFilter(file) => file.name.endsWith(.gz),
previewPath: 'https://www.baidu.com'
})
使用
配合打包命令使用
module.exports = {
configureWebpack: config => {
return {
plugins: [
SftpUploader({ ... })
]
}
}
}
export default defineConfig({
plugins: [
SftpUploader({ ... })
]
})
"scripts": {
"build": "vue-cli-service build --mode development",
"deploy": "set UPLOAD=true && yarn build"
}
"scripts": {
"build": "vue-cli-service build --mode development",
"deploy": "export UPLOAD=true && yarn build"
}
上传任意项目
SftpUploader({ ... }).put()
node uploader.js