First, install gulp-twitter
as a development dependency:
npm install --save-dev gulp-twitter
Then, add it to your gulpfile.js
:
var gulp = require('gulp');
var twitter = require('gulp-twitter');
// Construct `oauth` config.
var oauth = {
consumerKey: process.env.CONSUMER_KEY,
consumerSecret: process.env.CONSUMER_SECRET,
accessToken: process.env.ACCESS_TOKEN,
accessTokenSecret: process.env.ACCESS_TOKEN_SECRET
};
gulp.task('tweetie', function () {
return gulp.src('package.json')
.pipe(twitter(oauth, 'Watch me while I tweet this.'));
});
or use it as a reporter for a lint
or test
plugin like so
var jshint = require('gulp-jshint');
gulp.task('scripts', function () {
var message = function (file) {
var ret = file.relative;
if (file.jshint.success) {
ret = ret + ' looks good.';
} else {
ret = ret + ' seems off.';
}
return ret;
};
return gulp.src('*.js')
.pipe(jshint())
.pipe(twitter(oauth, message);
});
twitter(oauth, message)
Type: Object
Default: {}
OAuth credentials, i.e.
{
"consumerKey": "CONSUMER_KEY",
"consumerSecret": "CONSUMER_SECRET",
"accessToken": "ACCESS_TOKEN",
"accessTokenSecret": "ACCESS_TOKEN_SECRET"
}
Create a Twitter App and get OAuth credentials (if you haven’t already). Be careful, these tokens are like passwords so you should guard them carefully. For usage with Travis CI see the documentation on encryption keys.
Type: String
or Function
Default: ''
If you pass a Function
this will be passed a gulp-util.File Object
(see https://github.com/wearefractal/gulp-util/#new-fileobj) and should return a String
, e.g. function (file) {return 'gulp-tweeting ' + file.relative;}
.