| language: objective-c |
| osx_image: xcode8 |
| env: |
| global: |
| - LC_CTYPE=en_US.UTF-8 |
| - LANG=en_US.UTF-8 |
| - WORKSPACE=UsergridSDK.xcworkspace |
| - IOS_FRAMEWORK_SCHEME="UsergridSDK iOS" |
| - OSX_FRAMEWORK_SCHEME="UsergridSDK OSX" |
| - TVOS_FRAMEWORK_SCHEME="UsergridSDK tvOS" |
| - WATCHOS_FRAMEWORK_SCHEME="UsergridSDK watchOS" |
| - IOS_SDK=iphonesimulator10.0 |
| - OSX_SDK=macosx10.12 |
| - TVOS_SDK=appletvsimulator10.0 |
| - WATCHOS_SDK=watchsimulator3.0 |
| matrix: |
| - DESTINATION="OS=10.0,name=iPhone 7 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" |
| - DESTINATION="arch=x86_64" SCHEME="$OSX_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" |
| - DESTINATION="OS=10.0,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" |
| - DESTINATION="OS=3.0,name=Apple Watch - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" |
| script: |
| - xcodebuild -version |
| - xcodebuild -showsdks |
| |
| # Build Framework in Debug and Run Tests if specified |
| - if [ $RUN_TESTS == "YES" ]; then |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c; |
| else |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c; |
| fi |
| |
| # Build Framework in Release and Run Tests if specified |
| - if [ $RUN_TESTS == "YES" ]; then |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c; |
| else |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c; |
| fi |