Skip to content
This repository has been archived by the owner on Jan 17, 2023. It is now read-only.

Migrated to Fastlane for CI and Deployment #3148

Merged
merged 4 commits into from
Nov 12, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,8 @@ DerivedData
Tests/Pods
Tests/Podfile.lock
Tests/AFNetworking Tests.xcodeproj/xcshareddata/xcschemes/

# Fastlane
/fastlane/report.xml
/fastlane/.env*private*
fastlane/test-output/*
51 changes: 17 additions & 34 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,43 +5,26 @@ env:
global:
- LC_CTYPE=en_US.UTF-8
- LANG=en_US.UTF-8
- AFN_WORKSPACE=AFNetworking.xcworkspace
- IOS_FRAMEWORK_SCHEME="AFNetworking iOS"
- MAC_FRAMEWORK_SCHEME="AFNetworking OS X"
- TVOS_FRAMEWORK_SCHEME="AFNetworking tvOS"
- IOS_SDK=iphonesimulator9.1
- MAC_SDK=macosx10.11
- TVOS_SDK=appletvsimulator9.0
- IOS_EXAMPLE_SCHEME="iOS Example"
- MAC_EXAMPLE_SCHEME="OS X Example"
- TVOS_EXAMPLE_SCHEME="tvOS Example"
- FASTLANE_LANE=ci_commit
matrix:
- DESTINATION="OS=8.1,name=iPhone 4S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="YES" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="OS=8.2,name=iPhone 5" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="OS=8.3,name=iPhone 5S" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="OS=8.4,name=iPhone 6" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="OS=9.0,name=iPhone 6 Plus" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="OS=9.1,name=iPhone 6s" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$IOS_EXAMPLE_SCHEME"
- DESTINATION="arch=x86_64" SCHEME="$MAC_FRAMEWORK_SCHEME" SDK="$MAC_SDK" BUILD_EXAMPLE="NO" POD_LINT="NO" EXAMPLE_SCHEME="$MAC_EXAMPLE_SCHEME"
- DESTINATION="OS=9.0,name=Apple TV 1080p" SCHEME="$TVOS_FRAMEWORK_SCHEME" SDK="$TVOS_SDK" BUILD_EXAMPLE="YES" POD_LINT="NO" EXAMPLE_SCHEME="$TVOS_EXAMPLE_SCHEME"
- FASTLANE_ENV=ios81
- FASTLANE_ENV=ios82
- FASTLANE_ENV=ios83
- FASTLANE_ENV=ios84
- FASTLANE_ENV=ios90
- FASTLANE_ENV=ios91
- FASTLANE_ENV=osx
- FASTLANE_ENV=tvos90
before_install:
- gem install fastlane --no-rdoc --no-ri --no-document --quiet
- gem install cocoapods --no-rdoc --no-ri --no-document --quiet
- gem install xcpretty --no-rdoc --no-ri --no-document --quiet
script:
- set -o pipefail
- xcodebuild -version
- xcodebuild -workspace "$AFN_WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION"
-configuration Debug ONLY_ACTIVE_ARCH=NO test | xcpretty -c
- xcodebuild -workspace "$AFN_WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION"
-configuration Release ONLY_ACTIVE_ARCH=NO test | xcpretty -c
- if [ $BUILD_EXAMPLE == "YES" ]; then
xcodebuild -workspace "$AFN_WORKSPACE" -scheme "$EXAMPLE_SCHEME" -destination "$DESTINATION"
-configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
fi
- if [ $BUILD_EXAMPLE == "YES" ]; then
xcodebuild -workspace "$AFN_WORKSPACE" -scheme "$EXAMPLE_SCHEME" -destination "$DESTINATION"
-configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
fi
- if [ $POD_LINT == "YES" ]; then
pod lib lint --quick;
fi
- fastlane $FASTLANE_LANE configuration:Debug --env $FASTLANE_ENV
- fastlane $FASTLANE_LANE configuration:Release --env $FASTLANE_ENV
deploy:
provider: script
script: fastlane complete_framework_release --env deploy
on:
tags: true
10 changes: 10 additions & 0 deletions fastlane/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
AF_WORKSPACE="AFNetworking.xcworkspace"

AF_IOS_FRAMEWORK_SCHEME="AFNetworking iOS"
AF_TVOS_FRAMEWORK_SCHEME="AFNetworking tvOS"
AF_OSX_FRAMEWORK_SCHEME="AFNetworking OS X"

AF_IOS_EXAMPLE_SCHEME="iOS Example"
AF_TVOS_EXAMPLE_SCHEME="tvOS Example"
AF_OSX_EXAMPLE_SCHEME="OS X Example"

15 changes: 15 additions & 0 deletions fastlane/.env.default
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
AF_IOS_SDK=iphonesimulator9.1
AF_MAC_SDK=macosx10.11
AF_TVOS_SDK=appletvsimulator9.0

AF_CONFIGURATION=Release

SCAN_WORKSPACE=$AF_WORKSPACE
SCAN_SCHEME=$AF_IOS_FRAMEWORK_SCHEME
SCAN_DESTINATION="OS=9.1,name=iPhone 6s"
SCAN_SDK=$AF_IOS_SDK
SCAN_OUTPUT_DIRECTORY=fastlane/test-output

EXAMPLE_WORKSPACE=$AF_WORKSPACE
EXAMPLE_SCHEME=$AF_IOS_EXAMPLE_SCHEME
EXAMPLE_DESTINATION=$SCAN_DESTINATION
14 changes: 14 additions & 0 deletions fastlane/.env.deploy
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
DEPLOY_BRANCH=master
DEPLOY_PLIST_PATH=Framework/Info.plist
DEPLOY_PODSPEC=AFNetworking.podspec
DEPLOY_REMOTE=origin

DEPLOY_CHANGELOG_PATH=CHANGELOG.md
DEPLOY_CHANGELOG_DELIMITER=---

# Used for CHANGELOG Generation and Github Release Management
GITHUB_OWNER=AFNetworking
GITHUB_REPOSITORY=AFNetworking
# CI Should Provide GITHUB_API_TOKEN

CARTHAGE_FRAMEWORK_NAME=AFNetworking
2 changes: 2 additions & 0 deletions fastlane/.env.ios81
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=8.1,name=iPhone 4S"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
2 changes: 2 additions & 0 deletions fastlane/.env.ios82
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=8.2,name=iPhone 5"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
2 changes: 2 additions & 0 deletions fastlane/.env.ios83
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=8.3,name=iPhone 5S"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
2 changes: 2 additions & 0 deletions fastlane/.env.ios84
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=8.4,name=iPhone 6"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
2 changes: 2 additions & 0 deletions fastlane/.env.ios90
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=9.0,name=iPhone 6 Plus"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
2 changes: 2 additions & 0 deletions fastlane/.env.ios91
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SCAN_DESTINATION="OS=9.1,name=iPhone 6s"
EXAMPLE_DESTINATION=$SCAN_DESTINATION
6 changes: 6 additions & 0 deletions fastlane/.env.osx
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
SCAN_SCHEME=$AF_OSX_FRAMEWORK_SCHEME
SCAN_DESTINATION="arch=x86_64"
SCAN_SDK=$AF_OSX_SDK

EXAMPLE_SCHEME=$AF_OSX_EXAMPLE_SCHEME
EXAMPLE_DESTINATION=$SCAN_DESTINATION
6 changes: 6 additions & 0 deletions fastlane/.env.tvos90
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
SCAN_SCHEME=$AF_TVOS_FRAMEWORK_SCHEME
SCAN_DESTINATION="OS=9.0,name=Apple TV 1080p"
SCAN_SDK=$AF_TVOS_SDK

EXAMPLE_SCHEME=$AF_TVOS_EXAMPLE_SCHEME
EXAMPLE_DESTINATION=$SCAN_DESTINATION
4 changes: 4 additions & 0 deletions fastlane/Fastfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import_from_git(
url: 'https://github.com/AFNetworking/fastlane.git',
branch: '0.0.2'
)