blob: 308c4fda77d9a1c817d8aa031492d7b404073875 [file] [log] [blame]
sudo: false
addons:
# sauce labs key
jwt:
secure: NJr2X/VRsRjy/6cQqrx1kVwNH8UmVq4Ns90UjHMYFeSjacczc42qOCgMfCOxN8FBa5T6H7vqGnloTdpp56Vm1BPSLqX/M3uT1gM9/yGDsgKzEC90tt2WrGSyp7C2LRs5+EF+bj5hvFd+iO4bLA7nTnOTzgxwwzzsau0ljxx1VHbVHi2xOwuK7/ShwOhxfkNEHeJ76X/1sjssKgU++tU3uUAdiBqUupqpQmWVPsxKTp4svOcNNlBKqk+SMX8EDmeU36AXC3QBMVWmpug0z55gmmGsu8bAWRo6iKc9U0B43g5Tgw3DaRs/cNNJWN3mX/04hVJFJEzHvGaTbEvOXngHyDAtuDl9FiHYZpJK3H5eRhcXAh6IQXloYnXTzEQCIaX3N9p8gpFmMgOhMPy5a0iSIv2wcU1bNtzfbD5JokJp0vLsFphSrvhlOfKwOg0pq/dU66P1MTwHj6bwmxPK+GtQu8hRY/pA/yd9sTyuwp8CUyKkLWTSoQCqQ9xXbyJmxU3B8obiDRA/321LD8m4jlJy9zJO+pt/wt7zCh081G3bFsyO8VYLkhIQzXYQpppVLHArwImGip82T52c7OUtqknlchLdjoYHVd5zT8k3gqY5mVE6bIS4OFkXAFrQnBUafvAILUfSE7vcrCeNh8UzfGIdq3wFad1zc2NnCx/L/PUgpVM=
env:
global:
- SAUCE_USERNAME=snay
- TRAVIS_NODE_VERSION=6
- ANDROID_API_LEVEL=28
- ANDROID_BUILD_TOOLS_VERSION=28.0.3
language: node_js
node_js:
- "6"
# yaml anchor/alias: https://medium.com/@tommyvn/travis-yml-dry-with-anchors-8b6a3ac1b027
_ios: &_ios
os: osx
osx_image: xcode10.2
_android: &_android
language: android
os: linux
jdk: oraclejdk8
android:
components:
- tools
- build-tools-$ANDROID_BUILD_TOOLS_VERSION
- android-$ANDROID_API_LEVEL
licenses:
- 'android-sdk-preview-license-.+'
- 'android-sdk-license-.+'
- 'google-gdk-license-.+'
matrix:
include:
# one local test, without saucelabs
- env: PLATFORM=local
os: osx
osx_image: xcode9
- env: PLATFORM=local
os: osx
osx_image: xcode9.1
- env: PLATFORM=local
os: osx
osx_image: xcode9.2
- env: PLATFORM=local
os: osx
osx_image: xcode9.3
- env: PLATFORM=local
os: osx
osx_image: xcode9.4
- env: PLATFORM=local
os: osx
osx_image: xcode10
- env: PLATFORM=local
os: osx
osx_image: xcode10.1
- env: PLATFORM=local
os: osx
osx_image: xcode10.2
# many tests with saucelabs
- env: PLATFORM=browser-chrome
- env: PLATFORM=browser-firefox
- env: PLATFORM=browser-safari
- env: PLATFORM=browser-edge
- env: PLATFORM=ios-10.0
<<: *_ios
- env: PLATFORM=ios-11.3
<<: *_ios
- env: PLATFORM=ios-12.0
<<: *_ios
- env: PLATFORM=android-4.4
<<: *_android
- env: PLATFORM=android-5.1
<<: *_android
- env: PLATFORM=android-6.0
<<: *_android
- env: PLATFORM=android-7.0
<<: *_android
- env: PLATFORM=android-7.1
<<: *_android
- env: PLATFORM=android-8.0
<<: *_android
- env: PLATFORM=android-8.1
<<: *_android
before_install:
# `language: android` has no Node.js installed, therefore we need to install it manually
- if [[ "$PLATFORM" =~ android ]]; then nvm install $TRAVIS_NODE_VERSION; fi
- node --version
- if [[ "$PLATFORM" =~ local ]]; then npm install -g ios-deploy; fi
- if [[ "$PLATFORM" =~ android ]]; then gradle --version; fi
- if [[ "$PLATFORM" =~ ios ]]; then npm install -g ios-deploy; fi
- npm install -g cordova
install:
- npm install
script:
- if [[ "$PLATFORM" =~ local ]]; then npm run test-browser; fi
- if [[ "$PLATFORM" =~ local ]]; then npm run test-ios; fi
- if [[ "$PLATFORM" =~ TODO ]]; then npm run test-android; fi
- if [[ "$PLATFORM" != local ]]; then node main.js --config ./pr/$PLATFORM --plugin ./spec/testable-plugin/ --shouldUseSauce --buildName travis-paramedic-$TRAVIS_JOB_NUMBER; fi