aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVojta Jina2013-08-21 03:16:57 -0700
committerVojta Jina2013-08-23 16:49:10 -0700
commit80d0f98263786ef302ca7551c4515560a7c07195 (patch)
tree03d603ef6d1294ed75f346faa5509be105decd27
parentc64a9853074a392ba83a0f790b28b3be96c1144a (diff)
downloadangular.js-80d0f98263786ef302ca7551c4515560a7c07195.tar.bz2
chore(travis): clean up logs
Forward SauceConnect logs and Karma debug logs into a file and print these files at the very end of a build.
-rw-r--r--.travis.yml7
-rw-r--r--karma-docs.conf.js4
-rw-r--r--karma-e2e.conf.js4
-rw-r--r--karma-jqlite.conf.js4
-rw-r--r--karma-jquery.conf.js4
-rw-r--r--karma-modules.conf.js4
-rw-r--r--karma-shared.conf.js17
-rwxr-xr-xlib/sauce/sauce_connect_setup.sh19
-rwxr-xr-xtravis_print_logs.sh11
9 files changed, 49 insertions, 25 deletions
diff --git a/.travis.yml b/.travis.yml
index bf7e5145..eb4e5f6d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,6 +7,13 @@ env:
- SAUCE_USERNAME=angular-ci
- SAUCE_ACCESS_KEY=9b988f434ff8-fbca-8aa4-4ae3-35442987
- SAUCE_CONNECT_READY_FILE=/tmp/sauce-connect-ready
+ - LOGS_DIR=/tmp/angular-build/logs
+
+before_script:
+ - mkdir -p $LOGS_DIR
script:
- ./travis_build.sh
+
+after_script:
+ - ./travis_print_logs.sh
diff --git a/karma-docs.conf.js b/karma-docs.conf.js
index c3faf673..b0ef4e0f 100644
--- a/karma-docs.conf.js
+++ b/karma-docs.conf.js
@@ -1,7 +1,7 @@
var sharedConfig = require('./karma-shared.conf');
module.exports = function(config) {
- sharedConfig(config);
+ sharedConfig(config, {testName: 'AngularJS: docs', logFile: 'karma-docs.log'});
config.set({
files: [
@@ -35,6 +35,4 @@ module.exports = function(config) {
suite: 'Docs'
}
});
-
- config.sauceLabs.testName = 'AngularJS: docs';
};
diff --git a/karma-e2e.conf.js b/karma-e2e.conf.js
index d9a92e99..3d839a33 100644
--- a/karma-e2e.conf.js
+++ b/karma-e2e.conf.js
@@ -1,7 +1,7 @@
var sharedConfig = require('./karma-shared.conf');
module.exports = function(config) {
- sharedConfig(config);
+ sharedConfig(config, {testName: 'AngularJS: e2e', logFile: 'karma-e2e.log'});
config.set({
frameworks: [],
@@ -22,6 +22,4 @@ module.exports = function(config) {
suite: 'E2E'
}
});
-
- config.sauceLabs.testName = 'AngularJS: e2e';
};
diff --git a/karma-jqlite.conf.js b/karma-jqlite.conf.js
index bf190f5e..267e952f 100644
--- a/karma-jqlite.conf.js
+++ b/karma-jqlite.conf.js
@@ -2,7 +2,7 @@ var angularFiles = require('./angularFiles');
var sharedConfig = require('./karma-shared.conf');
module.exports = function(config) {
- sharedConfig(config);
+ sharedConfig(config, {testName: 'AngularJS: jqLite', logFile: 'karma-jqlite.log'});
config.set({
files: angularFiles.mergeFilesFor('karma'),
@@ -13,6 +13,4 @@ module.exports = function(config) {
suite: 'jqLite'
}
});
-
- config.sauceLabs.testName = 'AngularJS: jqLite';
};
diff --git a/karma-jquery.conf.js b/karma-jquery.conf.js
index 126b3e1d..4af9508d 100644
--- a/karma-jquery.conf.js
+++ b/karma-jquery.conf.js
@@ -2,7 +2,7 @@ var angularFiles = require('./angularFiles');
var sharedConfig = require('./karma-shared.conf');
module.exports = function(config) {
- sharedConfig(config);
+ sharedConfig(config, {testName: 'AngularJS: jQuery', logFile: 'karma-jquery.log'});
config.set({
files: angularFiles.mergeFilesFor('karmaJquery'),
@@ -13,6 +13,4 @@ module.exports = function(config) {
suite: 'jQuery'
}
});
-
- config.sauceLabs.testName = 'AngularJS: jQuery';
};
diff --git a/karma-modules.conf.js b/karma-modules.conf.js
index 9bbdec67..ecbaee21 100644
--- a/karma-modules.conf.js
+++ b/karma-modules.conf.js
@@ -2,7 +2,7 @@ var angularFiles = require('./angularFiles');
var sharedConfig = require('./karma-shared.conf');
module.exports = function(config) {
- sharedConfig(config);
+ sharedConfig(config, {testName: 'AngularJS: modules', logFile: 'karma-modules.log'});
config.set({
files: angularFiles.mergeFilesFor('karmaModules', 'angularSrcModules'),
@@ -12,6 +12,4 @@ module.exports = function(config) {
suite: 'modules'
}
});
-
- config.sauceLabs.testName = 'AngularJS: modules';
};
diff --git a/karma-shared.conf.js b/karma-shared.conf.js
index 06f31108..28978097 100644
--- a/karma-shared.conf.js
+++ b/karma-shared.conf.js
@@ -1,4 +1,4 @@
-module.exports = function(config) {
+module.exports = function(config, specificOptions) {
config.set({
frameworks: ['jasmine'],
autoWatch: true,
@@ -9,11 +9,13 @@ module.exports = function(config) {
// config for Travis CI
sauceLabs: {
- testName: 'AngularJS',
+ testName: specificOptions.testName || 'AngularJS',
startConnect: false,
tunnelIdentifier: process.env.TRAVIS_JOB_NUMBER
},
+ // For more browsers on Sauce Labs see:
+ // https://saucelabs.com/docs/platforms/webdriver
customLaunchers: {
'SL_Chrome': {
base: 'SauceLabs',
@@ -51,9 +53,16 @@ module.exports = function(config) {
});
- // TODO(vojta): remove once SauceLabs supports websockets.
- // This speeds up the capturing a bit, as browsers don't even try to use websocket.
if (process.env.TRAVIS) {
+ // TODO(vojta): remove once SauceLabs supports websockets.
+ // This speeds up the capturing a bit, as browsers don't even try to use websocket.
config.transports = ['xhr-polling'];
+
+ // Debug logging into a file, that we print out at the end of the build.
+ config.loggers.push({
+ type: 'file',
+ filename: process.env.LOGS_DIR + '/' + (specificOptions.logFile || 'karma.log'),
+ level: config.LOG_DEBUG
+ });
}
};
diff --git a/lib/sauce/sauce_connect_setup.sh b/lib/sauce/sauce_connect_setup.sh
index 7dfb6ba5..61ab9e2d 100755
--- a/lib/sauce/sauce_connect_setup.sh
+++ b/lib/sauce/sauce_connect_setup.sh
@@ -15,13 +15,16 @@ set -e
CONNECT_URL="http://saucelabs.com/downloads/Sauce-Connect-latest.zip"
CONNECT_DIR="/tmp/sauce-connect-$RANDOM"
CONNECT_DOWNLOAD="Sauce_Connect.zip"
-CONNECT_LOG="$CONNECT_DIR/log"
+
+CONNECT_LOG="$LOGS_DIR/sauce-connect"
+CONNECT_STDOUT="$LOGS_DIR/sauce-connect.stdout"
+CONNECT_STDERR="$LOGS_DIR/sauce-connect.stderr"
# Get Connect and start it
mkdir -p $CONNECT_DIR
cd $CONNECT_DIR
-curl $CONNECT_URL > $CONNECT_DOWNLOAD 2> /dev/null
-unzip $CONNECT_DOWNLOAD
+curl $CONNECT_URL -o $CONNECT_DOWNLOAD 2> /dev/null 1> /dev/null
+unzip $CONNECT_DOWNLOAD > /dev/null
rm $CONNECT_DOWNLOAD
@@ -36,6 +39,10 @@ if [ ! -z "$SAUCE_CONNECT_READY_FILE" ]; then
ARGS="$ARGS --readyfile $SAUCE_CONNECT_READY_FILE"
fi
-echo "Starting Sauce Connect in the background"
-echo "Logging into $CONNECT_LOG"
-java -jar Sauce-Connect.jar $ARGS $SAUCE_USERNAME $SAUCE_ACCESS_KEY > $CONNECT_LOG &
+
+echo "Starting Sauce Connect in the background, logging into:"
+echo " $CONNECT_LOG"
+echo " $CONNECT_STDOUT"
+echo " $CONNECT_STDERR"
+java -jar Sauce-Connect.jar $ARGS $SAUCE_USERNAME $SAUCE_ACCESS_KEY \
+ --logfile $CONNECT_LOG 2> $CONNECT_STDERR 1> $CONNECT_STDOUT &
diff --git a/travis_print_logs.sh b/travis_print_logs.sh
new file mode 100755
index 00000000..ec612ca1
--- /dev/null
+++ b/travis_print_logs.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+LOG_FILES=$LOGS_DIR/*
+
+for FILE in $LOG_FILES; do
+ echo -e "\n\n\n"
+ echo "================================================================================"
+ echo " $FILE"
+ echo "================================================================================"
+ cat $FILE
+done