forked from FabrizioBrancati/Queuer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
153 lines (143 loc) · 5.7 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
env:
global:
- IOS_SCHEME="Queuer iOS"
- MACOS_SCHEME="Queuer macOS"
- TVOS_SCHEME="Queuer tvOS"
- WATCHOS_SCHEME="Queuer watchOS"
matrix:
include:
- name: Ubuntu 14.04 / SwiftPM
os: linux
language: generic
sudo: required
dist: trusty
env: SPM="YES"
- name: Ubuntu 16.04 / SwiftPM
os: linux
language: generic
sudo: required
dist: xenial
env: SPM="YES"
- name: Ubuntu 18.04 / SwiftPM
os: linux
language: generic
sudo: required
dist: bionic
env: SPM="YES"
- name: macOS / Xcode 11.1 / SwiftPM
os: osx
language: objective-c
osx_image: xcode11.1
env: SPM="YES"
- name: macOS / Xcode 10.2 / SwiftPM
os: osx
language: objective-c
osx_image: xcode10.2
env: SPM="YES"
- name: macOS / Xcode 11.1 / iOS 13.1 / iPhone 11 Pro Max
os: osx
language: objective-c
osx_image: xcode11.1
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=13.1,name=iPhone 11 Pro Max" SCHEME="$IOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / iOS 12.2 / iPhone X
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=12.2,name=iPhone X" SCHEME="$IOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="YES"
- name: macOS / Xcode 10.2 / iOS 11.4 / iPhone 7 Plus
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=11.4,name=iPhone 7 Plus" SCHEME="$IOS_SCHEME" RUN_TESTS="YES" LINT="YES" COVERAGE="NO"
- name: macOS / Xcode 10.2 / iOS 10.3.1 / iPhone 6
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=10.3.1,name=iPhone 6" SCHEME="$IOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 11.1 / tvOS 13.1 / Apple TV 4K
os: osx
language: objective-c
osx_image: xcode11.1
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=13.0,name=Apple TV 4K" SCHEME="$TVOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / tvOS 12.2 / Apple TV 4K
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=12.2,name=Apple TV 4K" SCHEME="$TVOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / tvOS 11.2 / Apple TV 4K
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=11.2,name=Apple TV 4K" SCHEME="$TVOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 11.1 / watchOS 6.0 / Apple Watch Series 5 - 44mm
os: osx
language: objective-c
osx_image: xcode11.1
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=6.0,name=Apple Watch Series 5 - 44mm" SCHEME="$WATCHOS_SCHEME" RUN_TESTS="NO" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / watchOS 5.2 / Apple Watch Series 4 - 44mm
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=5.2,name=Apple Watch Series 4 - 44mm" SCHEME="$WATCHOS_SCHEME" RUN_TESTS="NO" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / watchOS 4.2 / Apple Watch Series 3 - 38mm
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=4.2,name=Apple Watch Series 3 - 38mm" SCHEME="$WATCHOS_SCHEME" RUN_TESTS="NO" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2 / watchOS 3.2 / Apple Watch Series 2 - 42mm
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="OS=3.2,name=Apple Watch Series 2 - 42mm" SCHEME="$WATCHOS_SCHEME" RUN_TESTS="NO" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 10.2
os: osx
language: objective-c
osx_image: xcode10.2
env: PROJ="Queuer.xcodeproj" DESTINATION="arch=x86_64" SCHEME="$MACOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
- name: macOS / Xcode 11.1
os: osx
language: objective-c
osx_image: xcode11.1
env: PROJ="Queuer.xcodeproj" DESTINATION="arch=x86_64" SCHEME="$MACOS_SCHEME" RUN_TESTS="YES" LINT="NO" COVERAGE="NO"
before_install:
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then
gem install xcpretty -N --no-ri --no-rdoc;
gem install cocoapods --pre --no-rdoc --no-ri --no-document;
brew update;
brew outdated carthage || brew upgrade carthage;
gem install slather;
fi
install:
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then
eval "$(curl -sL https://swiftenv.fuller.li/install.sh)";
fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then
./install_swiftlint.sh;
fi
script:
- set -o pipefail
- swift -version
- if [ "$SPM" == "YES" ]; then
swift package clean;
ruby generate_linux_tests.rb;
swift test;
fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then
xcodebuild -version;
xcodebuild -showsdks;
fi
- if [ "$RUN_TESTS" == "YES" ]; then
xcodebuild clean test -project "$PROJ" -scheme "$SCHEME" -destination "$DESTINATION" -enableCodeCoverage YES | xcpretty;
fi
- if [ "$RUN_TESTS" == "NO" ]; then
xcodebuild clean build -project "$PROJ" -scheme "$SCHEME" -destination "$DESTINATION" -configuration Release | xcpretty;
fi
- if [ "$LINT" == "YES" ]; then
swiftlint;
pod lib lint --verbose;
carthage build --no-skip-current;
fi
after_success:
- if [ "$COVERAGE" == "YES" ]; then
slather;
fi