| 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 |
| |