From 52519d45b94d43c6dcd60d0845b1914edf5c743c Mon Sep 17 00:00:00 2001 From: Vojta Jina Date: Mon, 1 Jul 2013 16:21:56 -0700 Subject: chore(travis): speed up the build - parallelize the tasks - cache requests (e2e tests) This reduces the time from ~18min to ~12min. It makes the output little messy. We could buffer output of each task and display it once it's fully finished, nicely. I think giving instant feedback is better.--- lib/grunt/utils.js | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/grunt/utils.js b/lib/grunt/utils.js index 0ba03da2..f0fffb14 100644 --- a/lib/grunt/utils.js +++ b/lib/grunt/utils.js @@ -33,11 +33,13 @@ module.exports = { var browsers = grunt.option('browsers'); var reporters = grunt.option('reporters'); var noColor = grunt.option('no-colors'); + var port = grunt.option('port'); var p = spawn('node', ['node_modules/karma/bin/karma', 'start', config, singleRun ? '--single-run=true' : '', reporters ? '--reporters=' + reporters : '', browsers ? '--browsers=' + browsers : '', - noColor ? '--no-colors' : '' + noColor ? '--no-colors' : '', + port ? '--port=' + port : '' ]); p.stdout.pipe(process.stdout); p.stderr.pipe(process.stderr); @@ -170,5 +172,24 @@ module.exports = { } next(); }; - } + }, + + parallelTask: function(name) { + var args = [name, '--port=' + this.lastParallelTaskPort]; + + if (grunt.option('browsers')) { + args.push('--browsers=' + grunt.option('browsers')); + } + + if (grunt.option('reporters')) { + args.push('--reporters=' + grunt.option('reporters')); + } + + this.lastParallelTaskPort++; + + + return {grunt: true, args: args}; + }, + + lastParallelTaskPort: 9876 }; -- cgit v1.2.3