123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- var gulp = require('gulp');
- var concat = require('gulp-concat');
- var uglify = require('gulp-uglify');
- var debug = require('gulp-debug');
- var rename = require('gulp-rename');
- var stripDebug = require('gulp-strip-debug');
- var gutil = require('gulp-util');
- var clean = require('gulp-clean');
- var runSequence = require('run-sequence');
- var gutil = require('gulp-util');
- var through = require('through2');
- var replace = require('gulp-replace');
- var tap = require('gulp-tap');
- var bump = require('gulp-bump');
- var shell = require('gulp-shell');
- var karma = require('karma').server;
- var connect = require('gulp-connect');
- var gulpProtractor = require("gulp-protractor").protractor;
- var bumpVersion = function(type) {
- type = type || 'patch';
- var version = '';
- gulp.src(['./bower.json', './package.json'])
- .pipe(bump({type: type}))
- .pipe(gulp.dest('./'))
- .pipe(tap(function(file, t) {
- version = JSON.parse(file.contents.toString()).version;
- })).on('end', function() {
- var color = gutil.colors;
- gulp.src('')
- .pipe(shell([
- 'git commit --all --message "Version ' + version + '"',
- (type != 'patch' ? 'git tag --annotate "v' + version + '" --message "Version ' + version + '"' : 'true')
- ], {ignoreErrors: false}))
- .pipe(tap(function() {
- gutil.log(color.green("Version bumped to ") + color.yellow(version) + color.green(", don't forget to push!"));
- }));
- });
- };
- gulp.task('clean', function() {
- return gulp.src('bulid')
- .pipe(clean({force: true}));
- });
- gulp.task('build-js', function() {
- return gulp.src([
- 'app/scripts/app.js',
- 'app/scripts/services/*.js',
- 'app/scripts/directives/*.js'
- ])
- .pipe(concat('ng-map.debug.js'))
- .pipe(gulp.dest('build/scripts'))
- .pipe(stripDebug())
- .pipe(concat('ng-map.js'))
- .pipe(gulp.dest('build/scripts'))
- .pipe(uglify())
- .pipe(rename('ng-map.min.js'))
- .pipe(gulp.dest('build/scripts'))
- .on('error', gutil.log);
- });
- gulp.task('docs', shell.task([
- 'node_modules/jsdoc/jsdoc.js '+
- '-c node_modules/angular-jsdoc/conf.json '+
- '-t node_modules/angular-jsdoc/template '+
- '-d build/docs '+
- './README.md ' +
- '-r app/scripts'
- ]));
- gulp.task('bump', ['build'], function() { bumpVersion('patch'); });
- gulp.task('bump:patch', ['build'], function() { bumpVersion('patch'); });
- gulp.task('bump:minor', ['build'], function() { bumpVersion('minor'); });
- gulp.task('bump:major', ['build'], function() { bumpVersion('major'); });
- gulp.task('build', function(callback) {
- runSequence('clean', 'build-js', 'test', 'docs', callback);
- });
- gulp.task('test', function (done) {
- karma.start({
- configFile: __dirname + '/config/karma.conf.js',
- singleRun: true
- }, done);
- });
- gulp.task('testapp-server', function() {
- connect.server({
- root: __dirname + '/testapp',
- port: 8888
- });
- });
- /**
- * For first-time user, we need to update webdrivers
- * $ node_modules/gulp-protractor/node_modules/protractor/bin/webdriver-manager update
- */
- gulp.task('e2e-test', ['testapp-server'], function() {
- gulp.src([__dirname + "/spec/e2e/*_spec.js"])
- .pipe(gulpProtractor({
- configFile: __dirname + "/config/protractor.conf.js",
- args: [
- '--baseUrl', 'http://localhost:8888'
- ]
- }))
- .on('error', function(e) {
- throw e;
- })
- .on('end', function() { // when process exits:
- connect.serverClose();
- });
- });
|