From 3697ee1471b0c617fad6e81776084da91f51c629 Mon Sep 17 00:00:00 2001 From: Jan Piotrowski Date: Thu, 20 Jun 2019 15:12:01 +0200 Subject: [PATCH] ci(travis): Update Travis CI configuration for new paramedic (#93) * Update Travis CI configuration for new paramedic * ADDITIONAL_TESTS_DIR=./tests/ios (#94) * Update .travis.yml * remove failing platforms --- .travis.yml | 75 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 61 insertions(+), 14 deletions(-) diff --git a/.travis.yml b/.travis.yml index 45e2c85..fbc3905 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,34 +1,81 @@ +# This Travis configuration file is built after a Cordova Paramedic +# specific template with minimal modifications and adaptations: +# https://github.com/apache/cordova-paramedic/blob/master/.travis.yml + sudo: false addons: jwt: + # SAUCE_ACCESS_KEY secure: rjC2avwYWiw+oTHleXcJPlehTA2j0jRZj+UJHq7fRCJRYIsraKy2j9q3fOSjWR7MEvf+/hUwhmf4gFk2zrDukbc0x3rMdt47BwNtbpCTN05KbHebl5AH0xx0ZPkJ5N0tJqG2t4Bl9wqNRINOMES77Souduh4udQdtGfA9IBmhb0FPNHmW0J++essbNjd5b5MgitqgTi30x7Tvf9QYMmsTKpN8pdfbE29dgqiY/HTKbxyOU+X2Ed5mcMi/bGhSGU78JU3u91S0VA+w+bmNZIU4VeXEFbDkjIboPR41aIbsfHrk/41+k6BAcOurKJ1TxBNEVxL8ouZfAuPDWhJVABxdbtYAiem309nuUJ0fR05qtX9AO1mmMh+0xByyme2xjSjTvt6bzZLNm2EdS6dO5FmG8aBVX4JJCHkTM5wrA5MgRFbEcgfv5jp3ynvY7dNasfaOLFa+IxZ5qzPdzkXnTEwvwe7ioo5phMGbpefFrimDl/vy1QJdTTCUcvaXkqumQdJwaySYDq3Nsns10yDPEATI1NtZGHLbUM+W+ZOaoTZRKwRelLHF5oyOQnyIu2HzBfJS7pHlIbQaxtigWHuSWuee+sfmTPjj40y4uUqQAEDxmawKb6Y6xqQr+QpvI9pvpzeZYHdApNBe6mPDVh4hwgjlFhE3/iusnU+aeZHIUJEmME= + env: global: - SAUCE_USERNAME=snay - TRAVIS_NODE_VERSION=6 -os: osx language: node_js -node_js: - - "6" +node_js: 6 + +# yaml anchor/alias: https://medium.com/@tommyvn/travis-yml-dry-with-anchors-8b6a3ac1b027 + +_ios: &_ios + os: osx + osx_image: xcode10.2 matrix: include: - - env: PLATFORM=ios-9.3 SHOULD_USE_SAUCE=--shouldUseSauce - osx_image: xcode8 - - env: PLATFORM=ios-10.0 SHOULD_USE_SAUCE=--shouldUseSauce - osx_image: xcode8 + # additional `npm test` in directory + - env: ADDITIONAL_TESTS_DIR=./tests/ios + <<: *_ios + + # many tests with saucelabs + - env: PLATFORM=ios-11.3 + <<: *_ios + - env: PLATFORM=ios-12.0 + <<: *_ios + - env: PLATFORM=ios-12.2 + <<: *_ios before_install: -- node --version -- xcodebuild -version -- npm install -g ios-deploy -- npm install -g cordova-paramedic@https://github.com/apache/cordova-paramedic.git -- npm install -g cordova + # manually install Node for `language: android` + - if [[ "$PLATFORM" =~ android ]]; then nvm install $TRAVIS_NODE_VERSION; fi + - node --version + - if [[ "$PLATFORM" =~ android ]]; then gradle --version; fi + - if [[ "$PLATFORM" =~ ios ]]; then npm install -g ios-deploy; fi + - npm install -g cordova + # install paramedic if not running on paramedic repo + - if ! [[ "$TRAVIS_REPO_SLUG" =~ cordova-paramedic ]]; then npm install -g github:apache/cordova-paramedic; fi install: - npm install + +before_script: + - | + if [[ "$TRAVIS_REPO_SLUG" =~ cordova-paramedic ]]; then + # when used in the cordova-paramedic repo + TEST_COMMAND="npm run eslint" + PARAMEDIC_PLUGIN_TO_TEST="./spec/testable-plugin/" + PARAMEDIC_COMMAND="node main.js" + else + # when used in any other (plugin) repo + TEST_COMMAND="npm test" + PARAMEDIC_PLUGIN_TO_TEST=$(pwd) + PARAMEDIC_COMMAND="cordova-paramedic" + fi + - PARAMEDIC_BUILDNAME=travis-$TRAVIS_REPO_SLUG-$TRAVIS_JOB_NUMBER + - | + echo "Variables now are set to:" + echo "TEST_COMMAND=$TEST_COMMAND" + echo "ADDITIONAL_TESTS=$ADDITIONAL_TESTS" + echo "PARAMEDIC_COMMAND=$PARAMEDIC_COMMAND" + echo "PLATFORM=$PLATFORM" + echo "PARAMEDIC_PLUGIN_TO_TEST=$PARAMEDIC_PLUGIN_TO_TEST" + echo "PARAMEDIC_BUILDNAME=$PARAMEDIC_BUILDNAME" script: - - npm test - - cordova-paramedic --config pr/$PLATFORM --plugin $TRAVIS_BUILD_DIR --shouldUseSauce --buildName travis-$TRAVIS_REPO_SLUG-$TRAVIS_JOB_NUMBER + - $TEST_COMMAND + - if [[ "$ADDITIONAL_TESTS_DIR" != "" ]]; then + cd $ADDITIONAL_TESTS_DIR && npm install && npm test; + else + $PARAMEDIC_COMMAND --config ./pr/$PLATFORM --plugin $PARAMEDIC_PLUGIN_TO_TEST --buildName $PARAMEDIC_BUILDNAME; + fi