@@ -23,17 +23,15 @@ jobs:
2323
2424 build :
2525 needs : lint
26- runs-on : ${{ matrix.os }}
26+ runs-on : macos-15
2727 strategy :
2828 fail-fast : false
2929 matrix :
30- os : [macos-15, macos-13]
31- type : [Release, Debug]
3230 include :
33- - { os: macos-15, arch: arm64, type: Release, postfix: '' }
34- - { os: macos-15, arch: arm64, type: Debug, postfix: -debug }
35- - { os: macos-13, arch: x86_64, type: Release, postfix: '' }
36- - { os: macos-13, arch: x86_64, type: Debug, postfix: -debug }
31+ - { arch: arm64, type: Release, postfix: '' }
32+ - { arch: arm64, type: Debug, postfix: -debug }
33+ - { arch: x86_64, type: Release, postfix: '' }
34+ - { arch: x86_64, type: Debug, postfix: -debug }
3735
3836 steps :
3937 - uses : actions/checkout@v4
4644
4745 - uses : actions/setup-node@v4
4846 with :
49- node-version : 20 .x
47+ node-version : 22 .x
5048
5149 - name : Install dependencies
5250 env :
@@ -69,13 +67,13 @@ jobs:
6967 - name : Build
7068 run : |
7169 # Don't log key on any CI artifact.
72- cmake -B build -G Ninja \
70+ cmake -B build/${{ matrix.arch }} -G Ninja \
7371 -DCMAKE_Swift_COMPILER=`which swiftc` \
7472 -DVERBOSE_LOGGING=OFF \
7573 -DCMAKE_OSX_ARCHITECTURES=${{ matrix.arch }} \
7674 -DCMAKE_BUILD_TYPE=${{ matrix.type }}
77- cmake --build build
78- sudo cmake --install build
75+ cmake --build build/${{ matrix.arch }}
76+ sudo cmake --install build/${{ matrix.arch }}
7977
8078 - name : Package and remove dev files
8179 run : |
8785 ./scripts/code-sign.sh # after tar to avoid local signature in tarball
8886
8987 - name : Test
90- run : ctest --test-dir build --output-on-failure
88+ run : ctest --test-dir build/${{ matrix.arch }} --output-on-failure
9189
9290 - name : Upload artifact
9391 uses : actions/upload-artifact@v4
@@ -102,12 +100,12 @@ jobs:
102100 md5sum -c checksum
103101
104102 - name : Generate meta.json
105- if : ${{ matrix.os == 'macos-15 ' && matrix.type == 'Release' }}
103+ if : ${{ matrix.arch == 'arm64 ' && matrix.type == 'Release' }}
106104 run : |
107105 echo "{\"object\": {\"sha\": \"$(git rev-parse HEAD)\"}}" > meta.json
108106
109107 - name : Upload meta.json
110- if : ${{ matrix.os == 'macos-15 ' && matrix.type == 'Release' }}
108+ if : ${{ matrix.arch == 'arm64 ' && matrix.type == 'Release' }}
111109 uses : actions/upload-artifact@v4
112110 with :
113111 name : meta.json
0 commit comments