Skip to content

Commit 6cbec3e

Browse files
committed
Use Xcode on macOS, setup-swift on Linux only
1 parent 215727e commit 6cbec3e

1 file changed

Lines changed: 31 additions & 12 deletions

File tree

.github/workflows/ci.yml

Lines changed: 31 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,24 +23,43 @@ jobs:
2323
- name: Run SwiftLint
2424
run: swiftlint --strict
2525

26-
build-and-test:
27-
name: ${{ matrix.name }}
28-
runs-on: ${{ matrix.runner }}
29-
strategy:
30-
fail-fast: false
31-
matrix:
32-
include:
33-
- name: macOS
34-
runner: macos-latest
35-
- name: Linux
36-
runner: ubuntu-latest
26+
build-and-test-macos:
27+
name: macOS
28+
runs-on: macos-latest
29+
steps:
30+
- uses: actions/checkout@v4
31+
32+
- name: Select Xcode
33+
uses: maxim-lobanov/setup-xcode@v1
34+
with:
35+
xcode-version: latest-stable
36+
37+
- name: Cache SPM dependencies
38+
uses: actions/cache@v4
39+
with:
40+
path: |
41+
.build
42+
~/Library/Caches/org.swift.swiftpm
43+
key: ${{ runner.os }}-spm-${{ hashFiles('Package.swift', 'Package.resolved') }}
44+
restore-keys: |
45+
${{ runner.os }}-spm-
46+
47+
- name: Build
48+
run: swift build
49+
50+
- name: Run tests
51+
run: swift test
52+
53+
build-and-test-linux:
54+
name: Linux
55+
runs-on: ubuntu-latest
3756
steps:
3857
- uses: actions/checkout@v4
3958

4059
- name: Set up Swift
4160
uses: swift-actions/setup-swift@v3
4261
with:
43-
swift-version: "6.2.4"
62+
swift-version: "6.2"
4463

4564
- name: Cache SPM dependencies
4665
uses: actions/cache@v4

0 commit comments

Comments
 (0)