@@ -17,19 +17,9 @@ step-library:
1717 run :
1818 name : Prepare
1919 command : |
20- git submodule sync
21- if (brew outdated | grep carthage > /dev/null); then brew upgrade carthage; fi
20+ if [ $(carthage outdated | grep -cF "latest Carthage version") -eq 0 ]; then brew update && brew upgrade carthage || true; fi
2221 echo "foo" > ~/.mapbox
2322
24- - &install-dependencies
25- run :
26- name : Install Dependencies
27- command : |
28- carthage bootstrap --platform ios --cache-builds --no-use-binaries
29- carthage bootstrap --platform tvos --cache-builds --no-use-binaries
30- carthage bootstrap --platform macos --cache-builds --no-use-binaries
31- carthage bootstrap --platform watchos --cache-builds --no-use-binaries
32-
3323 - &publish-codecov
3424 run :
3525 name : Publish Code Coverage data
4030 parameters :
4131 xcode :
4232 type : string
43- default : " 10.1.0"
4433 device :
4534 type : string
4635 default : " iPhone 6 Plus"
@@ -74,15 +63,31 @@ jobs:
7463 condition : << parameters.install_legacy_sim >>
7564 steps :
7665 - run : xcversion simulators --install="iOS << parameters.iOS >>"
77- - *install-dependencies
7866 - run :
79- name : Build and Test SDK
67+ name : iOS
8068 command : |
81- xcodebuild -sdk iphonesimulator -project MapboxDirections.xcodeproj -scheme 'MapboxDirections iOS' -destination 'platform=iOS Simulator,<< parameters.iOS >>,name=<< parameters.device >>' clean build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
82- xcodebuild -sdk iphonesimulator -project MapboxDirections.xcodeproj -scheme 'MapboxDirections watchOS' -destination 'watchOS Simulator,name=Apple Watch Series 3 - 42mm,OS=<< parameters.iOS >>' clean build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
83- xcodebuild -project MapboxDirections.xcodeproj -scheme 'MapboxDirections Mac' clean build clean build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
69+ carthage bootstrap --platform ios --cache-builds --no-use-binaries --new-resolver
70+ xcodebuild -sdk iphonesimulator -project MapboxDirections.xcodeproj -scheme 'MapboxDirections iOS' -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' clean build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
71+ - run :
72+ name : tvOS
73+ command : |
74+ carthage bootstrap --platform tvos --cache-builds --no-use-binaries --new-resolver
8475 xcodebuild -project MapboxDirections.xcodeproj -scheme 'MapboxDirections tvOS' -destination 'platform=tvOS Simulator,name=Apple TV 4K (at 1080p),OS=<< parameters.tvOS >>' clean build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
85- - *save-cache
76+ - run :
77+ name : macOS
78+ command : |
79+ carthage bootstrap --platform macos --cache-builds --no-use-binaries --new-resolver
80+ xcodebuild -project MapboxDirections.xcodeproj -scheme 'MapboxDirections Mac' clean build<<# parameters.test >> test <</ parameters.test >><<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >>
81+ - run :
82+ name : watchOS
83+ command : |
84+ carthage bootstrap --platform watchos --cache-builds --no-use-binaries --new-resolver
85+ xcodebuild -project MapboxDirections.xcodeproj -scheme 'MapboxDirections watchOS' -destination 'platform=watchOS Simulator,name=Apple Watch Series 3 - 42mm,OS=<< parameters.watchOS >>' clean build
86+ - when :
87+ condition : << parameters.codecoverage >>
88+ steps :
89+ - run : bash <(curl -s https://codecov.io/bash)
90+ - *save-cache
8691
8792workflows :
8893 workflow :
@@ -91,12 +96,15 @@ workflows:
9196 name : " Xcode 10.2 iOS 12.2"
9297 xcode : " 10.2.0"
9398 iOS : " 12.2"
99+ tvOS : " 12.2"
100+ watchOS : " 5.2"
94101 - build-job :
95102 name : " Xcode 10.1 iOS 12.1"
96103 xcode : " 10.1.0"
97104 iOS : " 12.1"
105+ tvOS : " 12.1"
98106 - build-job :
99- name : " Xcode 9.4 iOS 11.2 "
107+ name : " Xcode 9.4 iOS 9.3 "
100108 xcode : " 9.4.1"
101- iOS : " 11.4 "
102- watchOS : " 4.2 "
109+ iOS : " 9.3 "
110+ install_legacy_sim : true
0 commit comments