From de4e877fe3df74904ab0590fefbca0467b419038 Mon Sep 17 00:00:00 2001 From: Paul Zabelin Date: Fri, 2 Mar 2018 16:16:46 -0800 Subject: [PATCH] Use Build matrix to run macOS and iOS tests in parallel Squashed commits: [80ba44d] escape commas in environment variables [42706b2] experiment with multiline value [d0c842e] try using single quotes [ef1e88a] Revert "experiment with default script" This reverts commit 09262e7b4f043188b5310144c1dc3c8d0b61e9e2. [ffa94e1] experiment with travis yml [986f1df] move cache to mac matrix section [09262e7] experiment with default script [6767feb] move lint to mac to speedup travis [710685d] set xcode destination for both platforms [2051de9] inline travis functions [199dc8f] reduce matrix to 2 [2bfbb97] setup build matrix --- .travis.yml | 103 +++++++++++++++++++++++++++++----------------------- 1 file changed, 57 insertions(+), 46 deletions(-) diff --git a/.travis.yml b/.travis.yml index 41d8338..f1cb381 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,5 @@ language: objective-c osx_image: xcode9.2 -xcode_scheme: Example xcode_workspace: Example/PerspectiveTransform.xcworkspace xcode_sdk: iphonesimulator11.2 notifications: @@ -9,50 +8,62 @@ git: depth: false cache: cocoapods: true - directories: - - /usr/local/Cellar/opencv - - /usr/local/Cellar/eigen - - /usr/local/Cellar/eigen - - /usr/local/Cellar/ffmpeg - - /usr/local/Cellar/gdbm - - /usr/local/Cellar/ilmbase - - /usr/local/Cellar/jpeg - - /usr/local/Cellar/lame - - /usr/local/Cellar/libpng - - /usr/local/Cellar/libtiff - - /usr/local/Cellar/numpy - - /usr/local/Cellar/openexr - - /usr/local/Cellar/openssl - - /usr/local/Cellar/python - - /usr/local/Cellar/python3 - - /usr/local/Cellar/readline - - /usr/local/Cellar/sqlite - - /usr/local/Cellar/tbb - - /usr/local/Cellar/x264 - - /usr/local/Cellar/xvid - - /usr/local/Cellar/xz podfile: Example/Podfile -before_install: - - git -C ~/.cocoapods/repos/master/ pull --quiet & echo "Start cocoapods repo update on the background" - - yes | pip2 uninstall numpy > /dev/null - - for package in opencv xz $(brew deps opencv); do brew link $package || brew install $package; done +matrix: + include: + - xcode_scheme: Example + env: + - XCODE_DESNITATION='platform=iOS Simulator,name=iPhone X' + before_install: + - git -C ~/.cocoapods/repos/master/ pull --quiet + after_success: + - bash <(curl -s 'https://codecov.io/bash') -Z -J '^PerspectiveTransform$' -X gcov -X fix + before_deploy: + - carthage version + - brew update + - brew outdated carthage || brew upgrade carthage + - carthage build --no-skip-current --platform iOS + - carthage archive PerspectiveTransform + deploy: + provider: releases + skip_cleanup: true + api_key: + secure: ExLdab+b683kS0ctKKvkT0TeAFWccr+J1l58KnqIcYJdYntd66DhHsPM3p3v3fNDpfGZRycYKEn7X7Twdwl9mxDn0m4FSDQabKXgOm0J9h+zb56NGsEGXlAbOx+1yNuud+DGQ8sYiyHzERpCwfIHifT07/0Joax19+oxava3bjU+jfRa8Gt1HduV6gHYOY6ttUw22+G+5YI0sswKCd5cE3LvXBcuk3ApLW0mIn+AXLvTZonGHsuIK7Yd9yJ8MxsbdM+vXIL6b63mlPXCdL4EfmVK0VoRSsrgoq5ntV2xZJ2rhV74OifdADzqNv+TMZ+Gjy4dfMaOFI5BvoZumS5PZX2iMLHPSsgodWyb6al4NeDbglZB/DXk6I94ZrGi9cmljF1A44kAA4+TYazwE7qccffiNiCc7VHFsyDAWVrHWhCRSXmEOVMyl+FhhVv7UVJ7ZDQK5C6vPIyF6FESWv1WFiH8M/viKFD2cvW8agbas9L+CCo0Y/2TUNN2qQYUWFkzUDUDt+IgufjLCAKaosZgU7gtuGvDAYsqIgo0wyWD0+j0LMcRVn+Ply8xxKCTPXzf5RnOGu0LiW1p7ASGv+0z7wU0pGsXActqya/emDwwpNhgJ2htdYw0QLttScR8pmfRQQguOwRoDrcOR1ic8j3gTE9E4ljpYfpVfZo4dRi0a7c= + file: PerspectiveTransform.framework.zip + on: + tags: true + - xcode_scheme: OpenCV Tests + env: + - XCODE_DESNITATION='platform=macos' + before_install: + - git -C ~/.cocoapods/repos/master/ pull --quiet & + - yes | pip2 uninstall numpy > /dev/null + - for package in opencv xz $(brew deps opencv); do brew link $package || brew install $package; done + - fg || echo Cocoapds repository update has already finished + before_script: + - pod lib lint + cache: + directories: + - /usr/local/Cellar/opencv + - /usr/local/Cellar/eigen + - /usr/local/Cellar/eigen + - /usr/local/Cellar/ffmpeg + - /usr/local/Cellar/gdbm + - /usr/local/Cellar/ilmbase + - /usr/local/Cellar/jpeg + - /usr/local/Cellar/lame + - /usr/local/Cellar/libpng + - /usr/local/Cellar/libtiff + - /usr/local/Cellar/numpy + - /usr/local/Cellar/openexr + - /usr/local/Cellar/openssl + - /usr/local/Cellar/python + - /usr/local/Cellar/python3 + - /usr/local/Cellar/readline + - /usr/local/Cellar/sqlite + - /usr/local/Cellar/tbb + - /usr/local/Cellar/x264 + - /usr/local/Cellar/xvid + - /usr/local/Cellar/xz script: - - pod lib lint - - set -o pipefail && xcodebuild test -workspace "$TRAVIS_XCODE_WORKSPACE" -scheme 'OpenCV Tests' | xcpretty -f `xcpretty-travis-formatter` - - set -o pipefail && xcodebuild test -workspace "$TRAVIS_XCODE_WORKSPACE" -scheme "$TRAVIS_XCODE_SCHEME" -destination 'platform=iOS Simulator,name=iPhone X' | xcpretty -f `xcpretty-travis-formatter` -after_success: - - bash <(curl -s 'https://codecov.io/bash') -Z -J '^PerspectiveTransform$' -X gcov -X fix -before_deploy: - - carthage version - - brew update - - brew outdated carthage || brew upgrade carthage - - carthage build --no-skip-current --platform iOS - - carthage archive PerspectiveTransform -deploy: - provider: releases - skip_cleanup: true - api_key: - secure: ExLdab+b683kS0ctKKvkT0TeAFWccr+J1l58KnqIcYJdYntd66DhHsPM3p3v3fNDpfGZRycYKEn7X7Twdwl9mxDn0m4FSDQabKXgOm0J9h+zb56NGsEGXlAbOx+1yNuud+DGQ8sYiyHzERpCwfIHifT07/0Joax19+oxava3bjU+jfRa8Gt1HduV6gHYOY6ttUw22+G+5YI0sswKCd5cE3LvXBcuk3ApLW0mIn+AXLvTZonGHsuIK7Yd9yJ8MxsbdM+vXIL6b63mlPXCdL4EfmVK0VoRSsrgoq5ntV2xZJ2rhV74OifdADzqNv+TMZ+Gjy4dfMaOFI5BvoZumS5PZX2iMLHPSsgodWyb6al4NeDbglZB/DXk6I94ZrGi9cmljF1A44kAA4+TYazwE7qccffiNiCc7VHFsyDAWVrHWhCRSXmEOVMyl+FhhVv7UVJ7ZDQK5C6vPIyF6FESWv1WFiH8M/viKFD2cvW8agbas9L+CCo0Y/2TUNN2qQYUWFkzUDUDt+IgufjLCAKaosZgU7gtuGvDAYsqIgo0wyWD0+j0LMcRVn+Ply8xxKCTPXzf5RnOGu0LiW1p7ASGv+0z7wU0pGsXActqya/emDwwpNhgJ2htdYw0QLttScR8pmfRQQguOwRoDrcOR1ic8j3gTE9E4ljpYfpVfZo4dRi0a7c= - file: PerspectiveTransform.framework.zip - on: - tags: true + - set -o pipefail && xcodebuild test -workspace "$TRAVIS_XCODE_WORKSPACE" -scheme "$TRAVIS_XCODE_SCHEME" -destination "$XCODE_DESNITATION" | xcpretty -f `xcpretty-travis-formatter`