-
Notifications
You must be signed in to change notification settings - Fork 8
/
.travis.yml
58 lines (52 loc) · 3 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
osx_image: xcode11.3
language: swift
cache:
bundler: true
directories:
- Carthage
env:
secure: ink5jhbtR9aGbiVzcrPP+jBLtYKmZ61uxmXmqwqsyAZip2zbL/tktXdLaeNhUnlJHazZF156rOFe5DFSElFmNYvpSZrXJCVMxwWKB+MJWQ879LUk6W4W65jTvkXKZmMrrUqwkOTNNMq0ycfs5tx+eFJBzHd3Z93OX0oKwb44ZjC1NC05LGJfOlZQs+7IWYKXu0XKpZ/Zo+n4jGxMPEaQCMifz8ac8WVAgsgXs5R3ANrAd6AtBHZqNLu+NzGi5FQ2u7M1EERWo69qAmmHQYKB9aYyERi4cU6KD3XF8B89szR3pH41avfYFs+ZqenF7yAm0dN5UoLBqHA5s+yBQ1kzZbvcCunEU88XjgeRuzwTUfyTq8RIN+BNzaAwSCgu/fNMaFLOZjYAXK+gtVm2elx69maC6N+hKpZblmgUtmaOQyXzY3pVNXdqCqqqzIrqSyvqPuuNSzLxjVFJUW8ycYEfB4Iywcwl74IlxWJ58WpeCgMW3cVE4l4kxw+ZWoVniumpVlp69QtgwHloUosOzmzoIwLjgEm6uGZvr3DIKKXwLZACtq8Oj7uhm8iNV4sU5eS0w+b+VC6gYCxI4yOZHWhwtBG4QtrKlEvXC0Gjy4rIXN0JuKiAHLZKiCr0YuCmks2xXv2INNnJAIBVlJ7URVY4OSY+eqCiWUSobO8n48Zu7gk=
jobs:
include:
- stage: Build - CocoaPods
install:
- gem install cocoapods
script:
# Optimize CI performance by only building for iOS and skipping testing.
# Sources are provided to compile for MacOS in the Carthage phase below. Tests are also
# run in the Carthage phase below.
- travis_wait 500 pod lib lint --platforms=ios --skip-tests
- stage: Build - Carthage And Code Coverage
install:
# Install Carthage by building from source. This works around a bug with Carthage and PromiseKit which
# is resolved in master, but not in a Carthage release yet.
# Note: When re-enabling 'brew update' likely needs to be run.
# TODO(keefertaylor): Remove this when the next version of Carthage is released.
#
# Issue: https://github.com/Carthage/Carthage/issues/2760
# Fix: https://github.com/Carthage/Carthage/pull/2908
- mkdir -p carthage-build
- cd carthage-build
- git clone https://github.com/Carthage/Carthage && cd Carthage && git checkout f132af8e85eb1da84f5d4378ca0e2cdb3b87f598
- sudo make install
- which carthage
- carthage version
- cd ../..
- sudo rm -rf carthage-build
- brew install xcodegen
- gem install slather
script:
# Carthage requires that XCode project files are checked in. Project.yml is
# the canonical definition for the .xcodeproj file. Remove the .xcodeproj file
# and regenerate it.
# See: https://github.com/Carthage/Carthage/issues/2684
- rm -rf TezosKit.xcodeproj
- xcodegen generate
# Build with Carthage
- travis_wait 500 carthage bootstrap --platform iOS,mac --no-use-binaries --cache-builds
- set -o pipefail && xcodebuild test -scheme TezosKit_macOS -destination 'platform=macOS,arch=x86_64' ONLY_ACTIVE_ARCH=YES | xcpretty
- set -o pipefail && xcodebuild test -scheme TezosKit_iOS -destination 'platform=iOS Simulator,name=iPhone XS,OS=12.2' ONLY_ACTIVE_ARCH=YES | xcpretty
after_success:
# Generate and Upload Code Coverage
- slather
- bash <(curl -s https://codecov.io/bash) -f ./cobertura.xml