UNPKG

mongoscope-client

Version:
69 lines (57 loc) 1.71 kB
var gulp = require('gulp'), release = require('github-release'), pkg = require('./package.json'), browserify = require('browserify'), source = require('vinyl-source-stream'), rename = require('gulp-rename'), ecstatic = require('ecstatic'), http = require('http'), exec = require('child_process').exec; function create(fn){ browserify({entries: ['./bin/mongoscope-browser.js']}) .bundle({}) .pipe(source('./bin/mongoscope-browser.js')) .pipe(rename('mongoscope.js')) .pipe(gulp.dest('./dist/')) .on('end', fn); } gulp.task('default', ['serve']); gulp.task('serve', ['watch'], function(){ create(function(){ gulp.src('./dist/mongoscope.js') .pipe(gulp.dest('./examples/')); http.createServer( ecstatic({root: __dirname + '/'}) ).listen(8080); }); }); gulp.task('dist', function(){ create(function(){ gulp.src('./dist/*').pipe(release(pkg)); }); }); gulp.task('deploy', function(cb){ var msg, cmd, src = __dirname, dest = 'build', remote = pkg.repository.url.replace('git://github.com/', 'git@github.com:'); console.log(' getting last commit message'); exec('git log --oneline HEAD | head -n 1', {cwd: src}, function(err, stdout){ if(err) return cb(err); msg = stdout.toString(); console.log(' last commit: ' + msg); cmd = [ 'git init', 'rm -rf .DS_Store **/.DS_Store', 'git add .', 'git commit -m "Deploy: ' + msg + '"', 'git push --force ' + remote + ' master:gh-pages', 'rm -rf .git' ].join('&&'); exec(cmd, {cwd: dest}, function(err){ if(err) return cb(err); console.log(' ✔︎ GitHub Pages deployed'); cb(); }); }); });