Package Exports
- gulp-ssh
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (gulp-ssh) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
gulp-ssh
SSH and SFTP tasks for gulp
Install
Install with npm
npm install --save-dev gulp-ssh
Example
'use strict'
var fs = require('fs');
var gulp = require('gulp')
var GulpSSH = require('gulp-ssh')
var config = {
host: '192.168.0.21',
port: 22,
username: 'node',
privateKey: fs.readFileSync('/Users/zensh/.ssh/id_rsa')
}
var gulpSSH = new GulpSSH({
ignoreErrors: false,
sshConfig: config
})
gulp.task('exec', function () {
return gulpSSH
.exec(['uptime', 'ls -a', 'pwd'], {filePath: 'commands.log'})
.pipe(gulp.dest('logs'))
})
gulp.task('dest', function () {
return gulp
.src(['./**/*.js', '!**/node_modules/**'])
.pipe(gulpSSH.dest('/home/iojs/test/gulp-ssh/'))
})
gulp.task('sftp-read', function () {
return gulpSSH.sftp('read', '/home/iojs/test/gulp-ssh/index.js', {filePath: 'index.js'})
.pipe(gulp.dest('logs'))
})
gulp.task('sftp-write', function () {
return gulp.src('index.js')
.pipe(gulpSSH.sftp('write', '/home/iojs/test/gulp-ssh/test.js'))
})
gulp.task('shell', function () {
return gulpSSH
.shell(['cd /home/iojs/test/thunks', 'git pull', 'npm install', 'npm update', 'npm test'], {filePath: 'shell.log'})
.pipe(gulp.dest('logs'))
})
API
var GulpSSH = require('gulp-ssh')
GulpSSH(options)
var gulpSSH = new GulpSSH(options)
options.sshConfig
Required
Type: Object
host -
String
- Hostname or IP address of the server. Default: 'localhost'port -
Number
- Port number of the server. Default: 22username -
String
- Username for authentication. Default: (none)password -
String
- Password for password-based user authentication. Default: (none)privateKey -
String
orBuffer
- Buffer or string that contains a private key for key-based user authentication (OpenSSH format). Default: (none)
options.ignoreErrors
Type: Boolean
Ignore errors when executing commands. Default: (false)
gulpSSH.shell(commands, options)
return stream
, there is a event "ssh2Data" on stream that emit ssh2 stream's chunk.
commands
Required
Type: String
or Array
options.filePath
Option
Type: String
file path to write on local. Default: ('gulp-ssh.shell.log')
options.autoExit
Option
Type: Boolean
auto exit shell. Default: (true)
gulpSSH.exec(commands, options)
return stream
, there is a event "ssh2Data" on stream that emit ssh2 stream's chunk.
commands
Required
Type: String
or Array
options.filePath
Option
Type: String
file path to write on local. Default: ('gulp-ssh.exec.log')
gulpSSH.sftp(command, filePath, options)
return stream
command
Required
Type: String
Value: 'read' or 'write'
filePath
Required
Type: String
file path to read or write on server. Default: (none)
options
Option
Type: Object
gulpSSH.dest(destDir, options)
return stream
, copy the files to remote through sftp, acts similarly to Gulp dest, will make dirs if not exist.
License
MIT © Teambition