forked from Swinject/Swinject
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
54 lines (53 loc) · 2.03 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
language: objective-c
env:
global:
- LC_CTYPE=en_US.UTF-8
- PROJECT=Swinject.xcodeproj
git:
submodules: false
addons:
homebrew:
packages:
- xcodegen
matrix:
include:
- env: JOB="LINUX_SPM" SWIFT_VERSION="5.2.2"
os: linux
language: generic
sudo: required
dist: bionic
before_install:
- eval "$(curl -sL https://swiftenv.fuller.li/install.sh)"
before_script:
script:
- mv .Package.Test.swift Package.swift
- swift build
- swift test
- env: JOB="POD_LINT"
osx_image: xcode12.5
before_install:
script:
- pod lib lint
- env: JOB="XCODE" DEST="OS=14.0.1,name=iPhone 8" SCHEME="Swinject-iOS" SDK="iphonesimulator" ACTION="test" PLATFORM="iOS"
osx_image: xcode12.5
- env: JOB="XCODE" DEST="arch=x86_64" SCHEME="Swinject-macOS" SDK="macosx" ACTION="test" PLATFORM="OSX"
osx_image: xcode12.5
- env: JOB="XCODE" DEST="OS=14.0,name=Apple TV 4K" SCHEME="Swinject-tvOS" SDK="appletvsimulator" ACTION="test" PLATFORM="tvOS"
osx_image: xcode12.5
- env: JOB="XCODE" DEST="OS=7.0,name=Apple Watch Series 6 - 44mm" SCHEME="Swinject-watchOS" SDK="watchsimulator" ACTION="build" PLATFORM="watchOS"
osx_image: xcode12.5
before_install:
- xcconfig=$(mktemp /tmp/static.xcconfig.XXXXXX)
- trap 'rm -f "$xcconfig"' INT TERM HUP EXIT
- echo 'EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200 = arm64 arm64e armv7 armv7s armv6 armv8' >> $xcconfig
- echo 'EXCLUDED_ARCHS = $(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)__XCODE_$(XCODE_VERSION_MAJOR))' >> $xcconfig
- export XCODE_XCCONFIG_FILE="$xcconfig"
before_script:
- rm -r Swinject.xcodeproj
- xcodegen generate
script:
- set -o pipefail
- xcodebuild "$ACTION" -project "$PROJECT" -scheme "$SCHEME" -sdk "$SDK" -destination "$DEST" -configuration Release ENABLE_TESTABILITY=YES | xcpretty
notifications:
email:
on_success: never