Advertisement
Guest User

Untitled

a guest
May 28th, 2015
258
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. var gulp = require('gulp');
  2. var exec = require('child_process').exec;
  3. var path = require('path');
  4. var harmonic = require('./harmonic.json');
  5.  
  6. var browserSync = require('browser-sync');
  7. var reload = browserSync.reload;
  8.  
  9. var config = {
  10. outDir: 'public'
  11. };
  12.  
  13. var themeDir = function(uri) {
  14. return path.join(__dirname, 'node_modules', harmonic.theme, uri);
  15. };
  16.  
  17. gulp.task('clean', require('del').bind(null, [config.outDir]));
  18.  
  19. gulp.task('reload', ['build'], function() {
  20. reload();
  21. });
  22.  
  23. gulp.task('serve', ['build'], function () {
  24. browserSync({
  25. notify: false,
  26. port: 9000,
  27. server: {
  28. baseDir: [config.outDir]
  29. }
  30. });
  31.  
  32. // watch for changes
  33. gulp.watch([
  34. 'harmonic.json',
  35. 'src/**/*.md',
  36. 'resources/*',
  37. themeDir('**/*.{html,css,js}')
  38. ], ['reload']);
  39. });
  40.  
  41. gulp.task('build', ['clean'], function(cb) {
  42. exec('harmonic build', function(err) {
  43. if (err) {
  44. console.error(err);
  45. return cb(err); // return error
  46. }
  47.  
  48. cb(); // finished task
  49. });
  50. });
  51.  
  52. gulp.task('default', function() {
  53. gulp.start('build');
  54. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement