Base Project Files
This commit is contained in:
94
gulpfile.js
Normal file
94
gulpfile.js
Normal file
@@ -0,0 +1,94 @@
|
||||
var gulp = require("gulp");
|
||||
var merge = require('merge-stream');
|
||||
var babel = require("gulp-babel");
|
||||
var uglify = require('gulp-uglify');
|
||||
var concat = require('gulp-concat');
|
||||
var nodemon = require('gulp-nodemon');
|
||||
var plumber = require('gulp-plumber');
|
||||
var zip = require('gulp-zip');
|
||||
var tar = require('gulp-tar');
|
||||
var gzip = require('gulp-gzip');
|
||||
var sass = require('gulp-sass');
|
||||
var cleanCSS = require('gulp-clean-css');
|
||||
var include = require("gulp-include");
|
||||
|
||||
/**
|
||||
* Paths
|
||||
*
|
||||
* @type {Object}
|
||||
*/
|
||||
var paths = {
|
||||
scriptlibs: {
|
||||
|
||||
},
|
||||
scriptapps: [
|
||||
'./client/js/components/*.js',
|
||||
'./client/js/app.js'
|
||||
],
|
||||
scriptappswatch: [
|
||||
'./client/js/**/*.js'
|
||||
],
|
||||
csslibs: [
|
||||
|
||||
],
|
||||
cssapps: [
|
||||
'./client/css/app.scss'
|
||||
],
|
||||
cssappswatch: [
|
||||
'./client/css/**/*.scss'
|
||||
],
|
||||
fonts: [
|
||||
'./node_modules/font-awesome/fonts/*-webfont.*',
|
||||
'!./node_modules/font-awesome/fonts/*-webfont.svg'
|
||||
],
|
||||
deploypackage: [
|
||||
'./**/*',
|
||||
'!node_modules', '!node_modules/**',
|
||||
'!coverage', '!coverage/**',
|
||||
'!client/js', '!client/js/**',
|
||||
'!dist', '!dist/**',
|
||||
'!tests', '!tests/**',
|
||||
'!gulpfile.js', '!inch.json', '!config.json', '!wiki.sublime-project'
|
||||
]
|
||||
};
|
||||
|
||||
/**
|
||||
* TASK - Starts server in development mode
|
||||
*/
|
||||
gulp.task('server', ['scripts', 'css', 'fonts'], function() {
|
||||
nodemon({
|
||||
script: './server',
|
||||
ignore: ['public/', 'client/', 'tests/'],
|
||||
ext: 'js json',
|
||||
env: { 'NODE_ENV': 'development' }
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* TASK - Start dev watchers
|
||||
*/
|
||||
gulp.task('watch', function() {
|
||||
gulp.watch([paths.scriptappswatch], ['scripts-app']);
|
||||
gulp.watch([paths.cssappswatch], ['css-app']);
|
||||
});
|
||||
|
||||
/**
|
||||
* TASK - Starts development server with watchers
|
||||
*/
|
||||
gulp.task('default', ['watch', 'server']);
|
||||
|
||||
/**
|
||||
* TASK - Creates deployment packages
|
||||
*/
|
||||
gulp.task('deploy', ['scripts', 'css', 'fonts'], function() {
|
||||
var zipStream = gulp.src(paths.deploypackage)
|
||||
.pipe(zip('requarks-wiki.zip'))
|
||||
.pipe(gulp.dest('dist'));
|
||||
|
||||
var targzStream = gulp.src(paths.deploypackage)
|
||||
.pipe(tar('requarks-wiki.tar'))
|
||||
.pipe(gzip())
|
||||
.pipe(gulp.dest('dist'));
|
||||
|
||||
return merge(zipStream, targzStream);
|
||||
});
|
||||
Reference in New Issue
Block a user