diff options
| -rw-r--r-- | .travis.yml | 9 | ||||
| -rw-r--r-- | Gruntfile.js | 17 | ||||
| -rw-r--r-- | lib/grunt/plugins.js | 12 | ||||
| -rw-r--r-- | package.json | 1 | ||||
| -rwxr-xr-x | travis_build.sh | 21 |
5 files changed, 36 insertions, 24 deletions
diff --git a/.travis.yml b/.travis.yml index cce23318..cc91ca94 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,12 +8,5 @@ env: - SAUCE_ACCESS_KEY=9b988f434ff8-fbca-8aa4-4ae3-35442987 - SAUCE_CONNECT_READY_FILE=/tmp/sauce-connect-ready -before_script: - - export SAUCE_ACCESS_KEY=`echo $SAUCE_ACCESS_KEY | rev` - - ./lib/sauce/sauce_connect_setup.sh - - npm install -g grunt-cli - - grunt ci-checks package - - ./lib/sauce/sauce_connect_block.sh - script: - - grunt parallel:travis --reporters dots --browsers SL_Chrome + - ./travis_build.sh diff --git a/Gruntfile.js b/Gruntfile.js index af04aca8..014fb8cd 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -10,7 +10,6 @@ module.exports = function(grunt) { grunt.loadNpmTasks('grunt-contrib-jasmine-node'); grunt.loadNpmTasks('grunt-ddescribe-iit'); grunt.loadNpmTasks('grunt-merge-conflict'); - grunt.loadNpmTasks('grunt-shell'); grunt.loadNpmTasks('grunt-parallel'); grunt.loadTasks('lib/grunt'); @@ -102,18 +101,6 @@ module.exports = function(grunt) { clean: {build: ['build']}, - shell: { - bower: { - command: 'node ./node_modules/bower/bin/bower install', - options: { - stdout: true, - stderr: true, - failOnError: true - } - } - }, - - build: { scenario: { dest: 'build/angular-scenario.js', @@ -245,10 +232,10 @@ module.exports = function(grunt) { //alias tasks grunt.registerTask('test:unit', ['test:jqlite', 'test:jquery', 'test:modules']); grunt.registerTask('test:docgen', ['jasmine-node']); - grunt.registerTask('minify', ['shell:bower','clean', 'build', 'minall']); + grunt.registerTask('minify', ['bower','clean', 'build', 'minall']); grunt.registerTask('test:e2e', ['connect:testserver', 'test:end2end']); grunt.registerTask('webserver', ['connect:devserver']); - grunt.registerTask('package', ['shell:bower','clean', 'buildall', 'minall', 'collect-errors', 'docs', 'copy', 'write', 'compress']); + grunt.registerTask('package', ['bower','clean', 'buildall', 'minall', 'collect-errors', 'docs', 'copy', 'write', 'compress']); grunt.registerTask('ci-checks', ['ddescribe-iit', 'merge-conflict']); grunt.registerTask('default', ['package']); }; diff --git a/lib/grunt/plugins.js b/lib/grunt/plugins.js index aaf1e73e..a17f62cc 100644 --- a/lib/grunt/plugins.js +++ b/lib/grunt/plugins.js @@ -1,3 +1,4 @@ +var bower = require('bower'); var util = require('./utils.js'); var spawn = require('child_process').spawn; @@ -63,4 +64,15 @@ module.exports = function(grunt) { grunt.registerTask('collect-errors', 'Combine stripped error files', function () { util.collectErrors(); }); + + grunt.registerTask('bower', 'Install Bower packages.', function () { + var done = this.async(); + + bower.commands.install() + .on('log', function (result) { + grunt.log.ok('bower: ' + result.id + ' ' + result.data.endpoint.name); + }) + .on('error', grunt.fail.warn.bind(grunt.fail)) + .on('end', done); + }); }; diff --git a/package.json b/package.json index e9e93bef..d7427583 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,6 @@ "grunt-contrib-compress": "0.4.1", "grunt-contrib-connect": "0.1.2", "grunt-contrib-copy": "0.4.1", - "grunt-shell": "~0.2.2", "jasmine-node": "1.2.3", "q": "~0.9.2", "q-fs": "0.1.36", diff --git a/travis_build.sh b/travis_build.sh new file mode 100755 index 00000000..f86cb89e --- /dev/null +++ b/travis_build.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +set -xe + +warn() { + tput setaf 1 + echo "[ERROR] Received $1" + tput sgr0 + exit 1 +} + +trap "warn SIGINT" SIGINT +trap "warn SIGTERM" SIGTERM +trap "warn SIGHUP" SIGHUP + +export SAUCE_ACCESS_KEY=`echo $SAUCE_ACCESS_KEY | rev` +./lib/sauce/sauce_connect_setup.sh +npm install -g grunt-cli +grunt ci-checks package +./lib/sauce/sauce_connect_block.sh +grunt parallel:travis --reporters dots --browsers SL_Chrome
\ No newline at end of file |
