63 lines
3.4 KiB
YAML
63 lines
3.4 KiB
YAML
os: osx
|
|
osx_image: xcode10.1
|
|
branches:
|
|
only:
|
|
- master
|
|
cache: bundler
|
|
env:
|
|
global:
|
|
- LC_CTYPE=en_US.UTF-8
|
|
- LANG=en_US.UTF-8
|
|
- WORKSPACE=Alamofire.xcworkspace
|
|
- IOS_FRAMEWORK_SCHEME="Alamofire iOS"
|
|
- MACOS_FRAMEWORK_SCHEME="Alamofire macOS"
|
|
- TVOS_FRAMEWORK_SCHEME="Alamofire tvOS"
|
|
- WATCHOS_FRAMEWORK_SCHEME="Alamofire watchOS"
|
|
- EXAMPLE_SCHEME="iOS Example"
|
|
matrix:
|
|
- DESTINATION="OS=5.1,name=Apple Watch Series 4 - 44mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" RUN_TESTS="NO" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=4.2,name=Apple Watch Series 3 - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" RUN_TESTS="NO" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=3.2,name=Apple Watch Series 2 - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" RUN_TESTS="NO" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=2.2,name=Apple Watch - 42mm" SCHEME="$WATCHOS_FRAMEWORK_SCHEME" RUN_TESTS="NO" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
|
|
- DESTINATION="OS=12.1,name=iPhone XS" SCHEME="$IOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
|
|
- DESTINATION="OS=11.4,name=iPhone X" SCHEME="$IOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
|
|
- DESTINATION="OS=10.3.1,name=iPhone 7 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
|
|
- DESTINATION="OS=9.3,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
|
|
- DESTINATION="OS=8.4,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
|
|
|
|
- DESTINATION="OS=12.1,name=Apple TV 4K" SCHEME="$TVOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=11.4,name=Apple TV 4K" SCHEME="$TVOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=10.2,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
- DESTINATION="OS=9.2,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="NO"
|
|
|
|
- DESTINATION="arch=x86_64" SCHEME="$MACOS_FRAMEWORK_SCHEME" RUN_TESTS="YES" BUILD_EXAMPLE="NO" POD_LINT="YES"
|
|
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" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty;
|
|
else
|
|
xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty;
|
|
fi
|
|
|
|
# Build Framework in Release and Run Tests if specified
|
|
- if [ $RUN_TESTS == "YES" ]; then
|
|
xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty;
|
|
else
|
|
xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty;
|
|
fi
|
|
|
|
# Build Example in Debug if specified
|
|
- if [ $BUILD_EXAMPLE == "YES" ]; then
|
|
xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_SCHEME" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty;
|
|
fi
|
|
|
|
# Run `pod lib lint` if specified
|
|
- if [ $POD_LINT == "YES" ]; then
|
|
pod lib lint;
|
|
fi
|