geolets/gulp/tasks/wipe.js
2016-07-14 17:15:55 +02:00

45 lines
885 B
JavaScript

'use strict';
// native modules
const fs = require('fs');
// 3rd party modules
const mkdirp = require('mkdirp');
const chalk = require('chalk');
const gulp = require('gulp');
const gutil = require('gulp-util');
const rimraf = require('rimraf');
const TASK_NAME = 'wipe';
const config = require('../config').wipe;
gulp.task(TASK_NAME, (cb) => {
let count = 0;
config.src.forEach((folder) => {
fs.exists(folder, (exists) => {
if (exists) {
rimraf(folder, (err) => {
if (err) throw err;
gutil.log('Folder ' + chalk.magenta(folder) + ' removed');
mkdirp.sync(folder);
count++;
if (count >= config.src.length) {
cb();
}
});
} else {
count++;
mkdirp.sync(folder);
if (count >= config.src.length) {
cb();
}
}
});
});
});