Adding travis ci integration testing.
Project: http://git-wip-us.apache.org/repos/asf/usergrid-swift/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid-swift/commit/5f1de0da Tree: http://git-wip-us.apache.org/repos/asf/usergrid-swift/tree/5f1de0da Diff: http://git-wip-us.apache.org/repos/asf/usergrid-swift/diff/5f1de0da Branch: refs/heads/master Commit: 5f1de0da19446f97fd6f29f73c95d46200675c47 Parents: 2b139b3 Author: Robert Walsh <[email protected]> Authored: Wed Sep 14 10:35:26 2016 -0500 Committer: Robert Walsh <[email protected]> Committed: Wed Sep 14 10:35:26 2016 -0500 ---------------------------------------------------------------------- .travis.yml | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/usergrid-swift/blob/5f1de0da/.travis.yml ---------------------------------------------------------------------- diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..18791aa --- /dev/null +++ b/.travis.yml @@ -0,0 +1,51 @@ +language: objective-c +osx_image: xcode7.3 +env: + global: + - LC_CTYPE=en_US.UTF-8 + - LANG=en_US.UTF-8 + - PROJECT=UsergridSDK.xcodeproj + - IOS_FRAMEWORK_SCHEME="UsergridSDK iOS" + - OSX_FRAMEWORK_SCHEME="UsergridSDK OSX" + - TVOS_FRAMEWORK_SCHEME="UsergridSDK tvOS" + - WATCHOS_FRAMEWORK_SCHEME="UsergridSDK watchOS" + - IOS_SDK=iphonesimulator9.3 + - OSX_SDK=macosx10.11 + - TVOS_SDK=appletvsimulator9.2 + - WATCHOS_SDK=watchsimulator2.2 + - EXAMPLE_SCHEME="iOS Example" + matrix: + - DESTINATION="OS=8.1,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="YES" + - DESTINATION="OS=8.2,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=8.3,name=iPhone 5S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=8.4,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=9.0,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=9.1,name=iPhone 6 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=9.2,name=iPhone 6S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=9.3,name=iPhone 6S Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="arch=x86_64" SCHEME="$OSX_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=9.2,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" POD_LINT="NO" + - DESTINATION="OS=2.2,name=Apple Watch - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" POD_LINT="NO" +script: + - set -o pipefail + - xcodebuild -version + - xcodebuild -showsdks + + # Build Framework in Debug and Run Tests if specified + - if [ $RUN_TESTS == "YES" ]; then + xcodebuild -project "$PROJECT" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c; + else + xcodebuild -project "$PROJECT" -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 -project "$PROJECT" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c; + else + xcodebuild -project "$PROJECT" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c; + fi + + # Run `pod lib lint` if specified + - if [ $POD_LINT == "YES" ]; then + pod lib lint --allow-warnings; + fi
