.travis.yml 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. language: objective-c
  2. osx_image: xcode7.1
  3. env:
  4. global:
  5. - LC_CTYPE=en_US.UTF-8
  6. - LANG=en_US.UTF-8
  7. - WORKSPACE=Alamofire.xcworkspace
  8. - IOS_FRAMEWORK_SCHEME="Alamofire iOS"
  9. - OSX_FRAMEWORK_SCHEME="Alamofire OSX"
  10. - TVOS_FRAMEWORK_SCHEME="Alamofire tvOS"
  11. - WATCHOS_FRAMEWORK_SCHEME="Alamofire watchOS"
  12. - IOS_SDK=iphonesimulator9.1
  13. - OSX_SDK=macosx10.11
  14. - TVOS_SDK=appletvsimulator9.0
  15. - WATCHOS_SDK=watchsimulator2.0
  16. - EXAMPLE_SCHEME="iOS Example"
  17. matrix:
  18. - DESTINATION="OS=8.1,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="YES"
  19. - DESTINATION="OS=8.2,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
  20. - DESTINATION="OS=8.3,name=iPhone 5S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
  21. - DESTINATION="OS=8.4,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
  22. - DESTINATION="OS=9.0,name=iPhone 6 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
  23. - DESTINATION="OS=9.1,name=iPhone 6S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
  24. - DESTINATION="arch=x86_64" SCHEME="$OSX_FRAMEWORK_SCHEME" SDK="$OSX_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
  25. - DESTINATION="OS=9.0,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
  26. - DESTINATION="OS=2.0,name=Apple Watch - 38mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" SDK="$WATCHOS_SDK" RUN_TESTS="NO" BUILD_EXAMPLE="NO" POD_LINT="NO"
  27. before_install:
  28. - gem install cocoapods --no-rdoc --no-ri --no-document --quiet
  29. - gem install xcpretty --no-rdoc --no-ri --no-document --quiet
  30. script:
  31. - set -o pipefail
  32. - xcodebuild -version
  33. - xcodebuild -showsdks
  34. # Build Framework in Debug and Run Tests if specified
  35. - if [ $RUN_TESTS == "YES" ]; then
  36. xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO test | xcpretty -c;
  37. else
  38. xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
  39. fi
  40. # Build Framework in Release and Run Tests if specified
  41. - if [ $RUN_TESTS == "YES" ]; then
  42. xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO test | xcpretty -c;
  43. else
  44. xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
  45. fi
  46. # Build Example in Debug if specified
  47. - if [ $BUILD_EXAMPLE == "YES" ]; then
  48. xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
  49. fi
  50. # Build Example in Release if specified
  51. - if [ $BUILD_EXAMPLE == "YES" ]; then
  52. xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
  53. fi
  54. # Run `pod lib lint` if specified
  55. - if [ $POD_LINT == "YES" ]; then
  56. pod lib lint;
  57. fi