From 786f8fbe0d3e2c830628b1829775c6a979f16932 Mon Sep 17 00:00:00 2001 From: Jan Piotrowski Date: Fri, 10 May 2019 20:41:43 +0200 Subject: [PATCH 1/4] Update Travis CI configuration for new paramedic --- .travis.yml | 87 +++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 61 insertions(+), 26 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3b83eac68..5a523b005 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,6 +2,7 @@ sudo: false addons: jwt: + # sauce labs key secure: TZ88IEvAw1bsWPWxvDzXdpi2NK0i3PN4hG15+vDpIt6wXGVPknjxuXWJeLj7TqBpAIvP7XDfS8ZvHVPLe7fe8oOchZPLuiDw9VVIk6cnHjE6wpoavdGc/1mDJ3Bi4PDcHwRUr5ng5spYQqqlTwcECkH/q7iPgudiFM6rlOlGRyA= env: @@ -12,9 +13,14 @@ env: - ANDROID_BUILD_TOOLS_VERSION=28.0.3 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 -# anchor/alias: https://medium.com/@tommyvn/travis-yml-dry-with-anchors-8b6a3ac1b027 _android: &_android language: android os: linux @@ -31,22 +37,29 @@ _android: &_android matrix: include: - # # one local test, without saucelabs - # - env: PLATFORM=local - # os: osx - # osx_image: xcode9 + # additional `npm test` in directory + - env: ADDITIONAL_TESTS_DIR=./spec/testable-plugin/tests/foo + <<: *_ios + + # local tests, without saucelabs + - env: PLATFORM=local/browser + <<: *_ios + - env: PLATFORM=local/ios-10.0 + <<: *_ios # 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 - os: osx - osx_image: xcode9 - + - env: PLATFORM=ios-11.3 + <<: *_ios + - env: PLATFORM=ios-12.0 + <<: *_ios + - env: PLATFORM=ios-12.2 + <<: *_ios + - env: PLATFORM=android-4.4 <<: *_android - env: PLATFORM=android-5.1 @@ -63,22 +76,44 @@ matrix: <<: *_android before_install: -- rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm - && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm - install $TRAVIS_NODE_VERSION -- node --version -- if [[ "$PLATFORM" =~ android ]]; then gradle --version; fi -- if [[ "$PLATFORM" =~ ios ]]; then npm install -g ios-deploy; fi -- if [[ "$PLATFORM" =~ android ]]; then echo y | android update sdk -u --filter android-22,android-23,android-24,android-25,android-26,android-27; - fi -- git clone https://github.com/apache/cordova-paramedic /tmp/paramedic && pushd /tmp/paramedic - && npm install && popd -- 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 + - 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 -- node /tmp/paramedic/main.js --config pr/$PLATFORM --plugin $(pwd) --shouldUseSauce - --buildName travis-plugin-inappbrowser-$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 From d08beef56ccdbff11fa7666d9c7c929b69c13e58 Mon Sep 17 00:00:00 2001 From: Jan Piotrowski Date: Fri, 10 May 2019 20:46:25 +0200 Subject: [PATCH 2/4] remove wrong ADDITIONAL_TESTS_DIR --- .travis.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5a523b005..0af78abe5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -37,10 +37,6 @@ _android: &_android matrix: include: - # additional `npm test` in directory - - env: ADDITIONAL_TESTS_DIR=./spec/testable-plugin/tests/foo - <<: *_ios - # local tests, without saucelabs - env: PLATFORM=local/browser <<: *_ios From fe2a2aa15e1e71caea633b95c5f0bf808302c974 Mon Sep 17 00:00:00 2001 From: Jan Piotrowski Date: Tue, 18 Jun 2019 15:56:49 +0200 Subject: [PATCH 3/4] Update .travis.yml --- .travis.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0af78abe5..480c37bf5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,12 @@ +# 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 labs key + # SAUCE_ACCESS_KEY secure: TZ88IEvAw1bsWPWxvDzXdpi2NK0i3PN4hG15+vDpIt6wXGVPknjxuXWJeLj7TqBpAIvP7XDfS8ZvHVPLe7fe8oOchZPLuiDw9VVIk6cnHjE6wpoavdGc/1mDJ3Bi4PDcHwRUr5ng5spYQqqlTwcECkH/q7iPgudiFM6rlOlGRyA= env: @@ -56,8 +60,6 @@ matrix: - env: PLATFORM=ios-12.2 <<: *_ios - - env: PLATFORM=android-4.4 - <<: *_android - env: PLATFORM=android-5.1 <<: *_android - env: PLATFORM=android-6.0 @@ -70,6 +72,8 @@ matrix: <<: *_android - env: PLATFORM=android-8.1 <<: *_android + - env: PLATFORM=android-9.0 + <<: *_android before_install: # manually install Node for `language: android` From bdb4656aa3535fb566764ee62c8dd880f7faba3e Mon Sep 17 00:00:00 2001 From: Jan Piotrowski Date: Thu, 20 Jun 2019 15:18:18 +0200 Subject: [PATCH 4/4] remove failing platform --- .travis.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 480c37bf5..6bed4f261 100644 --- a/.travis.yml +++ b/.travis.yml @@ -57,8 +57,6 @@ matrix: <<: *_ios - env: PLATFORM=ios-12.0 <<: *_ios - - env: PLATFORM=ios-12.2 - <<: *_ios - env: PLATFORM=android-5.1 <<: *_android