При работе на удаленном тестовом сервере, появилась странная ошибка что переодически (зависимость так и не смог выявить), при выполнении задачи есть шанс что gulp.dest выплюнет пустой файл.
Появилось предположение что это связано что несколько разработчиков из под своих пользователей на сервере запустили свои gulp watch и активно с ними работают.
Ниже код всего GULP файла. В чем может быть проблема?
var gulp = require('gulp'),
compass = require('gulp-compass'),
plumber = require('gulp-plumber'),
autoprefixer = require('gulp-autoprefixer'),
livereload = require('gulp-livereload'),
connect = require('gulp-connect'),
notify = require('gulp-notify'),
imagemin = require('gulp-imagemin'),
newer = require('gulp-newer'),
fileinclude = require('gulp-file-include'),
uglify = require('gulp-uglify'),
jshint = require('gulp-jshint');
gulp.task('connect', function() {
connect.server({
root: 'build/',
livereload: true
});
});
gulp.task('css',function () {
gulp.src('assets/sass/*.scss')
.pipe(plumber())
.pipe(compass({
css: 'build/css',
sass: 'assets/sass',
image: 'build/img/',
logging: true,
relative: true,
sourcemap: false,
time: true,
debug: false,
generated_images_path: 'build/img/'
}))
.pipe(autoprefixer({
browsers: ['last 12 versions','> 1%'],
cascade: false,
remove: false
}))
.pipe(gulp.dest('build/css'))
});
gulp.task('html', function () {
gulp.src('assets/html/*.html')
.pipe(fileinclude({
prefix: '@@',
basepath: '@file'
}))
.pipe(gulp.dest('build'))
});
gulp.task('js', function () {
gulp.src('assets/js/project.js')
.pipe(plumber())
.pipe(gulp.dest('build/js/'));
});
gulp.task('img', function () {
gulp.src('assets/img/**/*')
.pipe(newer('build/img/'))
.pipe(imagemin({
progressive: true
}))
.pipe(gulp.dest('build/img/'))
gulp.src('assets/pic/**/*')
.pipe(newer('build/pic/'))
.pipe(imagemin({
progressive: true
}))
.pipe(gulp.dest('build/pic/'))
});
gulp.task('watch',function () {
gulp.watch('assets/sass/**/*.scss',['css'])
gulp.watch('assets/html/**/*.html',['html'])
gulp.watch('assets/img/**/*',['img'])
gulp.watch('assets/pic/**/*',['img'])
gulp.watch('assets/js/*.js',['js'])
});
gulp.task('default', ['js', 'css', 'html', 'img', 'watch']);