Skip to content
This repository has been archived by the owner on Feb 22, 2018. It is now read-only.

Commit

Permalink
feat(travis): add travis support
Browse files Browse the repository at this point in the history
  • Loading branch information
mhevery committed Jan 8, 2014
1 parent 1a7d4a4 commit fa3727f
Show file tree
Hide file tree
Showing 16 changed files with 170 additions and 47 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ gen
tmp
npm-debug.log
.DS_Store
dart-sdk
dartium
**/*.dart.js
**/*.dart.js.deps
**/*.dart.js.map
Expand Down
27 changes: 27 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
language: node_js
node_js:
- 0.10

env:
matrix:
- JOB=unit-stable
# - JOB=unit-dev
global:
- CHROME_BIN=/usr/bin/google-chrome

before_install:
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
- "sudo apt-get update -qq"
- "sudo apt-get install -qq unzip chromium-browser"
- "sudo apt-get install libxss1"
- "wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb"
- "sudo dpkg -i google-chrome*.deb"
- "sudo chmod u+s /opt"


before_script:
- ./scripts/travis/setup.sh

script:
- ./scripts/travis/build.sh
29 changes: 2 additions & 27 deletions analyze.sh
Original file line number Diff line number Diff line change
@@ -1,28 +1,3 @@
#!/bin/sh

DART_ANALYSER_BIN=`which dartanalyzer`

# OS-specific Dartium path defaults
if [ -z $DART_ANALYSER_BIN ]; then
case $( uname -s ) in
Darwin)
DART_ANALYSER_BIN=/Applications/dart/dart-sdk/bin/dartanalyzer
;;
Linux)
DART_ANALYSER_BIN=/opt/dart-sdk/bin/dartanalyzer
esac
fi

OUT=tmp/all.dart
mkdir -p tmp

$DART_ANALYSER_BIN --version

echo // generated file > $OUT

for FILE in $(ls lib/angular.dart perf/*_perf.dart test/*_spec.dart test/*/*_spec.dart)
do
echo export \'../$FILE\' hide main, NestedRouteInitializer\; >> $OUT
done

./generate.sh && $DART_ANALYSER_BIN $OUT
echo DPRICATED: use ./scripts/analyze.sh
$(dirname $0)/scripts/analyze.sh
4 changes: 0 additions & 4 deletions dartium.sh

This file was deleted.

9 changes: 2 additions & 7 deletions genDocs.sh
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
#!/bin/bash

dartdoc \
--package-root=packages/ \
--out doc \
--mode=static \
--exclude-lib=js,metadata,meta,mirrors,intl,number_symbols,number_symbol_data,intl_helpers,date_format_internal,date_symbols,angular.util \
packages/angular/angular.dart lib/mock/module.dart \
echo DEPRICATED: use ./scripts/generate-documentation.sh
$(dirname $0)/scripts/generate-documentation.sh
10 changes: 2 additions & 8 deletions generate.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
#!/bin/sh

mkdir -p gen

cat test/core/parser/generated_functions.dart | sed -e 's/_template;/_generated;/' | grep -v REMOVE > gen/generated_functions.dart
dart bin/parser_generator_for_spec.dart >> gen/generated_functions.dart

cat test/core/parser/generated_getter_setter.dart | sed -e 's/_template;/_generated;/' | grep -v REMOVE > gen/generated_getter_setter.dart
dart bin/parser_generator_for_spec.dart getter_setter >> gen/generated_getter_setter.dart
echo DEPRICATED: use ./scripts/generate-expressions.sh
$(dirname $0)/scripts/generate-expressions.sh
6 changes: 6 additions & 0 deletions karma.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,17 @@ module.exports = function(config) {
'karma-dart',
'karma-chrome-launcher',
'karma-script-launcher',
'karma-phantomjs-launcher',
'karma-junit-reporter',
'../../../karma-parser-generator',
'../../../karma-parser-getter-setter'
],

customLaunchers: {
Dartium: { base: 'ChromeCanary', flags: ['--no-sandbox'] },
ChromeNoSandbox: { base: 'Chrome', flags: ['--no-sandbox'] }
},

preprocessors: {
'test/core/parser/generated_functions.dart': ['parser-generator'],
'test/core/parser/generated_getter_setter.dart': ['parser-getter-setter']
Expand Down
6 changes: 5 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,12 @@
"dependencies" : {
"karma" : "0.10.2",
"karma-dart" : "0.2.6",
"karma-script-launcher": "*",
"karma-chrome-launcher": "*",
"karma-phantomjs-launcher": "*",
"karma-firefox-launcher": "*",
"karma-junit-reporter": "0.1.0"
"karma-junit-reporter": "0.1.0",
"jasmine-node": "*"
}
}

21 changes: 21 additions & 0 deletions scripts/analyze.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/sh

set -e

. $(dirname $0)/env.sh

OUT=tmp/all.dart
mkdir -p tmp

$DARTANALYZER --version

echo // generated file > $OUT

for FILE in $(ls lib/angular.dart perf/*_perf.dart test/*_spec.dart test/*/*_spec.dart)
do
echo export \'../$FILE\' hide main, NestedRouteInitializer\; >> $OUT
done

$(dirname $0)/generate-expressions.sh

$DARTANALYZER $OUT
28 changes: 28 additions & 0 deletions scripts/env.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
#!/bin/sh
set -e
DART=`which dart|cat` # pipe to cat to ignore the exit code
export DARTSDK=`which dart | sed -e 's/\/dart\-sdk\/.*$/\/dart-sdk/'`
if [ "$DARTSDK" = "/Applications/dart/dart-sdk" ]; then
# Assume we are a mac machine with standard dart setup
export DARTIUM="/Applications/dart/chromium/Chromium.app/Contents/MacOS/Chromium"
else
export DARTSDK="`pwd`/dart-sdk"
case $( uname -s ) in
Darwin)
export DARTIUM=${DARTIUM:-./dartium/Chromium.app/Contents/MacOS/Chromium}
;;
Linux)
export DARTIUM=${DARTIUM:-./dartium/chrome}
;;
esac
fi
export DART=${DART:-"$DARTSDK/bin/dart"}
export PUB=${PUB:-"$DARTSDK/bin/pub"}
export DARTANALYZER=${DARTANALYZER:-"$DARTSDK/bin/dartanalyzer"}
export DARTDOC=${DARTDOC:-"$DARTSDK/bin/dartdoc"}


export CHROME_CANARY_BIN=${CHROME_CANARY_BIN:-"$DARTIUM"}
export CHROME_BIN=${CHROME_BIN:-"google-chrome"}
export DART_FLAGS='--enable_type_checks --enable_asserts'
export PATH=$PATH:$DARTSDK/bin
8 changes: 8 additions & 0 deletions scripts/generate-documentation.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/bash
. $(dirname $0)/env.sh
$DARTDOC \
--package-root=packages/ \
--out doc \
--mode=static \
--exclude-lib=js,metadata,meta,mirrors,intl,number_symbols,number_symbol_data,intl_helpers,date_format_internal,date_symbols,angular.util \
packages/angular/angular.dart lib/mock/module.dart \
11 changes: 11 additions & 0 deletions scripts/generate-expressions.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/sh

. $(dirname $0)/env.sh

mkdir -p gen

cat test/core/parser/generated_functions.dart | sed -e 's/_template;/_generated;/' | grep -v REMOVE > gen/generated_functions.dart
$DART bin/parser_generator_for_spec.dart >> gen/generated_functions.dart

cat test/core/parser/generated_getter_setter.dart | sed -e 's/_template;/_generated;/' | grep -v REMOVE > gen/generated_getter_setter.dart
$DART bin/parser_generator_for_spec.dart getter_setter >> gen/generated_getter_setter.dart
File renamed without changes.
15 changes: 15 additions & 0 deletions scripts/travis/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/bash

set -e
. ./scripts/env.sh

./scripts/generate-expressions.sh
./scripts/analyze.sh

./node_modules/jasmine-node/bin/jasmine-node playback_middleware/spec/ &&
node "node_modules/karma/bin/karma" start karma.conf \
--reporters=junit,dots --port=8765 --runner-port=8766 \
--browsers=Dartium,ChromeNoSandbox --single-run --no-colors --no-color

./scripts/generate-documentation.sh

7 changes: 7 additions & 0 deletions scripts/travis/chrome-no-sandbox.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash
# see
# - https://code.google.com/p/chromium/issues/detail?id=138505
# - https://code.google.com/p/chromium/wiki/LinuxSUIDSandbox


/usr/bin/google-chrome --no-sandbox $@
34 changes: 34 additions & 0 deletions scripts/travis/setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/bin/bash

set -e

case $( uname -s ) in
Linux)
DART_SDK_ZIP=dartsdk-linux-x64-release.zip
DARTIUM_ZIP=dartium-linux-x64-release.zip
;;
Darwin)
DART_SDK_ZIP=dartsdk-macos-x64-release.zip
DARTIUM_ZIP=dartium-macos-ia32-release.zip
;;
esac

CHANNEL=`echo $JOB | cut -f 2 -d -`
echo Fetch Dart channel: $CHANNEL

curl http://storage.googleapis.com/dart-archive/channels/$CHANNEL/release/latest/sdk/$DART_SDK_ZIP > $DART_SDK_ZIP
echo Fetched new dart version $(unzip -p $DART_SDK_ZIP dart-sdk/version)
rm -rf dart-sdk
unzip $DART_SDK_ZIP > /dev/null
rm $DART_SDK_ZIP

curl http://storage.googleapis.com/dart-archive/channels/$CHANNEL/release/latest/dartium/$DARTIUM_ZIP > $DARTIUM_ZIP
unzip $DARTIUM_ZIP > /dev/null
rm -rf dartium
rm $DARTIUM_ZIP
mv dartium-* dartium

echo =============================================================================
. ./scripts/env.sh
$DART --version
$PUB install

0 comments on commit fa3727f

Please sign in to comment.