Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const FtpDeploy = require('ftp-deploy');
- const chalk = require('chalk');
- const ora = require('ora');
- const logSymbols = require('log-symbols');
- const deployer = new FtpDeploy();
- const config = {
- username: 'your-ftp-username',
- password: 'your-ftp-password',
- host: 'your-server.com',
- port: 21,
- localRoot: __dirname + '/dist',
- remoteRoot: '/',
- exclude: ['.DS_Store']
- }
- console.log(chalk.blue('Launching deploy ship...'));
- console.log(chalk.blue('========================'));
- const connectSpinner = ora('Contacting server').start();
- const progress = {};
- deployer.deploy(config, function(err) {
- if (err) {
- connectSpinner.fail(chalk.red('ERROR') + ' ' + err.message);
- process.exit(1);
- } else {
- console.log(chalk.green(logSymbols.success + ' DEPLOY SUCCESS'));
- process.exit();
- }
- });
- deployer.on('error', function(err) {
- connectSpinner.fail(chalk.red('ERROR') + ' ' + err.message);
- });
- deployer.on('uploading', function(data) {
- if (data.transferredFileCount < 1) connectSpinner.succeed('Start uploading process');
- progress[data.filename] = ora('[ ' + (data.transferredFileCount + 1) + '/' + data.totalFileCount + ' ] ' + data.filename).start();
- });
- deployer.on('uploaded', function(data) {
- progress[data.filename].succeed();
- });
Add Comment
Please, Sign In to add comment