-
Notifications
You must be signed in to change notification settings - Fork 5
72 lines (70 loc) · 2.49 KB
/
Copy pathxcodebuild.yml
File metadata and controls
72 lines (70 loc) · 2.49 KB
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
name: xcodebuild
on:
push:
branches: [master]
paths:
- '.github/workflows/xcodebuild.yml'
- 'ObjectEncoder.xcodeproj/**'
- 'Sources/**'
- 'Tests/**'
- '!Tests/LinuxMain.swift'
pull_request:
paths:
- '.github/workflows/xcodebuild.yml'
- 'ObjectEncoder.xcodeproj/**'
- 'Sources/**'
- 'Tests/**'
- '!Tests/LinuxMain.swift'
jobs:
xcodebuild:
strategy:
matrix:
xcode:
- version: '9.4.1'
- version: '10'
flags_for_test: -parallel-testing-enabled NO
- version: '10.1'
flags_for_test: -parallel-testing-enabled NO
- version: '10.2'
flags_for_test: -parallel-testing-enabled NO
- version: '10.2.1'
flags_for_test: -parallel-testing-enabled NO
- version: '10.3'
flags_for_test: -parallel-testing-enabled NO
- version: '11'
flags_for_test: -parallel-testing-enabled NO
- version: '11.1'
flags_for_test: -parallel-testing-enabled NO
- version: '11.2'
flags_for_test: -parallel-testing-enabled NO -enableCodeCoverage YES
xcode_flags: ['-scheme ObjectEncoder-Package -project ObjectEncoder.xcodeproj']
runs-on: macOS-10.14
env:
DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode.version }}.app
steps:
- uses: actions/checkout@v1
- run: xcodebuild -version
- name: macOS
if: always()
run: xcodebuild ${{ matrix.xcode_flags }} ${{ matrix.xcode.flags_for_test }} test | xcpretty
shell: bash
- name: iPhone Simulator
if: always()
run: xcodebuild ${{ matrix.xcode_flags }} ${{ matrix.xcode.flags_for_test }} test -sdk iphonesimulator -destination "name=iPhone 8" | xcpretty
shell: bash
- name: Apple TV Simulator
if: always()
run: xcodebuild ${{ matrix.xcode_flags }} ${{ matrix.xcode.flags_for_test }} test -sdk appletvsimulator -destination "name=Apple TV 4K" | xcpretty
shell: bash
- name: watchOS Simulator
if: always()
run: xcodebuild ${{ matrix.xcode_flags }} build -sdk watchsimulator | xcpretty
shell: bash
- name: Codecov
if: contains(matrix.xcode.flags_for_test, '-enableCodeCoverage YES')
run: |
if [[ -n "${CODECOV_TOKEN}" ]]; then
curl -s https://codecov.io/bash | bash -s
fi
shell: bash
env: { 'CODECOV_TOKEN': '${{ secrets.CODECOV_TOKEN }}' }