Upload your folder to ftp/sftp server easier and faster
npm i -D folder-upload-webpack-plugin
add following code to your webpack config file.
const FolderUploadWebpackPlugin = require('folder-upload-webpack-plugin');
let webpackConfig = {
entry: 'index.js',
output: {
path: 'assets',
filename: 'index_bundle.js'
},
plugins: [
new FolderUploadWebpackPlugin({
confirmation: true,
server: {host: 'ip', port: '22', username: 'username', password: 'password'},
paths: () => {
let data = [];
data[path.resolve(__dirname, "build_/")] = path.join(".../build/");
return data;
},
clear: true,
logging: false,
})
]
}
Option Name | Usage | Type | Default Value |
---|---|---|---|
confirmation | show confirmation before upload | Boolean | false |
server | ssh config for options(or Array, to multiple servers) you can see docs | Object | {port:22} |
paths | function - return object {local: remote}, see path example | Function | (none) |
clear | optional clear server folder before upload | Boolean | true |
logging | optional show log | Boolean | false |
symlink | create local symlink, after upload | object | null |
Option Name | Usage | Type | Default Value |
---|---|---|---|
ssh | optional ssh class | Class | see code |
chmod | optional compress level | Octal | 0o644 |
before | optional array with command | Array | [] |
after | optional array with command | Array | [] |
for other options you can see https://github.com/mscdex/ssh2#client-methods
...
paths: () => {
let data = [];
data[path.resolve(__dirname, "build_/")] = path.join("...build/");
return data;
},...
- fix ts
- add after and before command
- replace paths. see Options
- remove pathsClear && remotePath
- change upload type
- init