| language: objective-c |
| osx_image: xcode7.3 |
| env: |
| global: |
| - LC_CTYPE=en_US.UTF-8 |
| - LANG=en_US.UTF-8 |
| - WORKSPACE=Alamofire.xcworkspace |
| - IOS_FRAMEWORK_SCHEME="Alamofire iOS" |
| - OSX_FRAMEWORK_SCHEME="Alamofire OSX" |
| - TVOS_FRAMEWORK_SCHEME="Alamofire tvOS" |
| - WATCHOS_FRAMEWORK_SCHEME="Alamofire 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" BUILD_EXAMPLE="YES" POD_LINT="YES" |
| - DESTINATION="OS=8.2,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=8.3,name=iPhone 5S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=8.4,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=9.0,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=9.1,name=iPhone Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=9.2,name=iPhone 6S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="OS=9.3,name=iPhone 6S Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO" |
| - DESTINATION="arch=x86_64" SCHEME="$OSX_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO" |
| - DESTINATION="OS=9.2,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO" |
| - DESTINATION="OS=2.2,name=Apple Watch - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" BUILD_EXAMPLE="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 -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO 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 ReleaseTest and Run Tests if specified |
| - if [ $RUN_TESTS == "YES" ]; then |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration ReleaseTest ONLY_ACTIVE_ARCH=NO test | xcpretty -c; |
| else |
| xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration ReleaseTest ONLY_ACTIVE_ARCH=NO build | xcpretty -c; |
| fi |
| |
| # Build Example in Debug if specified |
| - if [ $BUILD_EXAMPLE == "YES" ]; then |
| xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c; |
| fi |
| |
| # Build Example in Release if specified |
| - if [ $BUILD_EXAMPLE == "YES" ]; then |
| xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_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; |
| fi |