Skip to content

Commit f714efd

Browse files
authored
ci: fix Xcode 16 version (#599)
* fix ci * bump macOS to 15 * add separate step for macos-14 * remove custom name
1 parent ed3349a commit f714efd

File tree

2 files changed

+40
-12
lines changed

2 files changed

+40
-12
lines changed

.github/workflows/ci.yml

Lines changed: 38 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,58 @@ concurrency:
1515

1616
jobs:
1717
xcodebuild:
18-
name: xcodebuild
18+
runs-on: macos-15
19+
strategy:
20+
matrix:
21+
command: [test, ""]
22+
platform: [IOS, MAC_CATALYST, MACOS, TVOS, VISIONOS, WATCHOS]
23+
exclude:
24+
- { platform: VISIONOS }
25+
include:
26+
- { command: test, skip_release: 1 }
27+
steps:
28+
- uses: actions/checkout@v4
29+
- name: Cache derived data
30+
uses: actions/cache@v3
31+
with:
32+
path: |
33+
~/.derivedData
34+
key: |
35+
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.command }}-${{ hashFiles('**/Sources/**/*.swift', '**/Tests/**/*.swift') }}
36+
restore-keys: |
37+
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.command }}-
38+
- name: Set IgnoreFileSystemDeviceInodeChanges flag
39+
run: defaults write com.apple.dt.XCBuild IgnoreFileSystemDeviceInodeChanges -bool YES
40+
- name: Update mtime for incremental builds
41+
uses: chetan/git-restore-mtime-action@v2
42+
- run: make dot-env
43+
- name: Debug
44+
run: make XCODEBUILD_ARGUMENT="${{ matrix.command }}" CONFIG=Debug PLATFORM="${{ matrix.platform }}" xcodebuild
45+
- name: Release
46+
if: matrix.skip_release != '1'
47+
run: make XCODEBUILD_ARGUMENT="${{ matrix.command }}" CONFIG=Release PLATFORM="${{ matrix.platform }}" xcodebuild
48+
49+
xcodebuild-macOS-14:
1950
runs-on: macos-14
2051
strategy:
2152
matrix:
2253
command: [test, ""]
2354
platform: [IOS, MAC_CATALYST, MACOS, TVOS, VISIONOS, WATCHOS]
24-
xcode: ["15.4", "16.0"]
2555
exclude:
2656
- { platform: VISIONOS }
2757
include:
2858
- { command: test, skip_release: 1 }
2959
steps:
3060
- uses: actions/checkout@v4
31-
- name: Select Xcode ${{ matrix.xcode }}
32-
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app
3361
- name: Cache derived data
3462
uses: actions/cache@v3
3563
with:
3664
path: |
3765
~/.derivedData
3866
key: |
39-
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.xcode }}-${{ matrix.command }}-${{ hashFiles('**/Sources/**/*.swift', '**/Tests/**/*.swift') }}
67+
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.command }}-${{ hashFiles('**/Sources/**/*.swift', '**/Tests/**/*.swift') }}
4068
restore-keys: |
41-
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.xcode }}-${{ matrix.command }}-
69+
deriveddata-xcodebuild-${{ matrix.platform }}-${{ matrix.command }}-
4270
- name: Set IgnoreFileSystemDeviceInodeChanges flag
4371
run: defaults write com.apple.dt.XCBuild IgnoreFileSystemDeviceInodeChanges -bool YES
4472
- name: Update mtime for incremental builds
@@ -67,9 +95,9 @@ jobs:
6795
path: |
6896
.build
6997
key: |
70-
build-spm-linux-${{ matrix.swift-verion }}-${{ hashFiles('**/Sources/**/*.swift', '**/Tests/**/*.swift', '**/Package.resolved') }}
98+
build-spm-linux-${{ matrix.swift-version }}-${{ hashFiles('**/Sources/**/*.swift', '**/Tests/**/*.swift', '**/Package.resolved') }}
7199
restore-keys: |
72-
build-spm-linux-${{ matrix.swift-verion }}-
100+
build-spm-linux-${{ matrix.swift-version }}-
73101
- run: make dot-env
74102
- name: Run tests
75103
run: swift test --skip IntegrationTests
@@ -86,7 +114,7 @@ jobs:
86114

87115
examples:
88116
name: Examples
89-
runs-on: macos-14
117+
runs-on: macos-15
90118
steps:
91119
- uses: actions/checkout@v4
92120
- name: Cache derived data
@@ -98,7 +126,7 @@ jobs:
98126
restore-keys: |
99127
deriveddata-examples-
100128
- name: Select Xcode 16
101-
run: sudo xcode-select -s /Applications/Xcode_16.app
129+
run: sudo xcode-select -s /Applications/Xcode_16.0.app
102130
- name: Set IgnoreFileSystemDeviceInodeChanges flag
103131
run: defaults write com.apple.dt.XCBuild IgnoreFileSystemDeviceInodeChanges -bool YES
104132
- name: Update mtime for incremental builds

.github/workflows/integration-tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,14 @@ concurrency:
1313

1414
jobs:
1515
integration-tests:
16-
runs-on: macos-14
16+
runs-on: macos-15
1717
name: Integration Tests
1818
steps:
1919
- uses: actions/checkout@v3
2020
with:
2121
fetch-depth: 0
2222
- name: Select Xcode 16
23-
run: sudo xcode-select -s /Applications/Xcode_16.app
23+
run: sudo xcode-select -s /Applications/Xcode_16.0.app
2424
- name: Run tests
2525
run: make test-integration
2626
env:

0 commit comments

Comments
 (0)