Advertisement
Guest User

Untitled

a guest
Aug 5th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. // Include gulp
  2. var gulp = require('gulp');
  3.  
  4. // Include Our Plugins
  5. var sass = require('gulp-ruby-sass');
  6. var path = require('path');
  7. var changed = require('gulp-changed');
  8. var notify = require("gulp-notify");
  9. var ftp = require('gulp-ftp');
  10.  
  11. //General
  12. var themeName = 'default-bootstrap';
  13. var projectDir = path.resolve(__dirname);
  14.  
  15. var paths = {
  16. prestashopSassFiles: './themes/default-bootstrap/sass/**/*.scss',
  17. prestashopCssDir: './themes/default-bootstrap/css',
  18. };
  19. var sassConfig = {
  20. style: 'expanded',
  21. compass: true,
  22. loadPath: [projectDir + '/themes/'+ themeName +'/sass']
  23. };
  24.  
  25. var ftpConnect = {
  26. host: 'pinguin1.ftp.ukraine.com.ua',
  27. user: 'pinguin1_auto',
  28. pass: 'j2c13o1i'
  29. };
  30.  
  31. /*
  32. * Custom routine to cancel gulp when jshint is failed
  33. * (Currently not implemented in gulp-jshint :/)
  34. */
  35. var map = require('map-stream');
  36. var exitOnJshintError = map(function (file, cb) {
  37. if (!file.jshint.success) {
  38. console.error('jshint failed');
  39. process.exit(1);
  40. }
  41. });
  42.  
  43. /* Task
  44. * Compile our prestashop SASS files
  45. */
  46. gulp.task('sass', function() {
  47. ftpConnect.remotePath = '/themes/default-bootstrap/css';
  48. return gulp.src(paths.prestashopSassFiles)
  49. .pipe(changed(paths.prestashopCssDir,{ extension: '.css' }))
  50. .pipe(sass(sassConfig))
  51. .pipe(ftp(ftpConnect))
  52. .pipe(gulp.dest(paths.prestashopCssDir))
  53. .pipe(notify("SASS Done!"));
  54. });
  55.  
  56.  
  57. gulp.task('sass:all', function() {
  58. ftpConnect.remotePath = '/themes/default-bootstrap/css';
  59. return gulp.src(paths.prestashopSassFiles)
  60. .pipe(sass(sassConfig))
  61. .pipe(ftp(ftpConnect))
  62. .pipe(gulp.dest(paths.prestashopCssDir))
  63. .pipe(notify("SASS:All Done!"));
  64. });
  65.  
  66. /* Task
  67. * Watch Files For Changes
  68. */
  69. gulp.task('watch', function() {
  70. gulp.watch(paths.prestashopSassFiles, ['sass']);
  71. });
  72.  
  73. // Default Task
  74. gulp.task('default', ['sass:all', 'watch']);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement