1919 strategy :
2020 fail-fast : false
2121 matrix :
22- os : [ubuntu-latest, windows-latest, macos-latest]
22+ # Pin macos to get the version of XCode that we need: https://github.com/actions/runner-images/issues/10703
23+ os : [ubuntu-latest, windows-latest, macos-15]
2324
2425 steps :
2526 - name : Checkout
5556 strategy :
5657 fail-fast : false
5758 matrix :
58- os : [ubuntu-latest, windows-latest, macos-latest]
59+ # Pin macos to get the version of XCode that we need: https://github.com/actions/runner-images/issues/10703
60+ os : [ubuntu-latest, windows-latest, macos-15]
5961
6062 steps :
6163 - name : Cancel Previous Runs
7981
8082 # We use macOS for the final publishing build so we get all the iOS/macCatalyst targets in the packages
8183 - name : Set Environment Variables
82- if : startsWith(matrix .os, 'macos')
84+ if : runner .os == 'macOS'
8385 run : echo "CI_PUBLISHING_BUILD=true" >> $GITHUB_ENV
8486
8587 - name : Download sentry-native (Linux)
@@ -116,6 +118,12 @@ jobs:
116118 - name : Restore .NET Dependencies
117119 run : dotnet restore Sentry-CI-Build-${{ runner.os }}.slnf --nologo
118120
121+ - name : Install Android SDKs
122+ if : runner.os == 'macOS'
123+ run : |
124+ dotnet build src/Sentry/Sentry.csproj -t:InstallAndroidDependencies -f:net7.0-android -p:AcceptAndroidSDKLicenses=True -p:AndroidSdkPath="/usr/local/lib/android/sdk/"
125+ dotnet build src/Sentry/Sentry.csproj -t:InstallAndroidDependencies -f:net8.0-android -p:AcceptAndroidSDKLicenses=True -p:AndroidSdkPath="/usr/local/lib/android/sdk/"
126+
119127 - name : Build
120128 run : dotnet build Sentry-CI-Build-${{ runner.os }}.slnf -c Release --no-restore --nologo -v:minimal -flp:logfile=build.log -p:CopyLocalLockFileAssemblies=true
121129
@@ -156,7 +164,8 @@ jobs:
156164 strategy :
157165 fail-fast : false
158166 matrix :
159- os : [ubuntu-latest, windows-latest, macos-latest]
167+ # Pin macos to get the version of XCode that we need: https://github.com/actions/runner-images/issues/10703
168+ os : [ubuntu-latest, windows-latest, macos-15]
160169
161170 steps :
162171 - uses : actions/checkout@v4
@@ -166,6 +175,7 @@ jobs:
166175 sparse-checkout : |
167176 Directory.Build.props
168177 integration-test
178+ .github
169179 - name : Fetch Nuget Packages
170180 uses : actions/download-artifact@v4
171181 with :
@@ -178,30 +188,8 @@ jobs:
178188 sudo apt update
179189 sudo apt install libcurl4-openssl-dev
180190
181- # Possibly instead of installing net9.0 here we could pin the workload version when installing workloads
182- - uses : actions/setup-dotnet@v4
183- with :
184- dotnet-version : |
185- 8.0.x
186- 9.0.100-rc.2.24474.11
187-
188- - name : Setup Xcode
189- if : matrix.os == 'macos-latest'
190- run : |
191- sudo xcode-select --switch /Applications/Xcode_${{env.XCODE_VERSION}}.app/Contents/Developer
192- xcodebuild -version
193-
194- # Needed for Android SDK setup step
195- - uses : actions/setup-java@v4
196- with :
197- distribution : ' temurin'
198- java-version : ' 17'
199-
200- - name : Setup Android SDK
201- uses : android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 # v3.2.2
202-
203- - name : Install android Workloads
204- run : dotnet workload install maui-android
191+ - name : Setup Environment
192+ uses : ./.github/actions/environment
205193
206194 - name : Test
207195 uses : getsentry/github-workflows/sentry-cli/integration-test/@v2
0 commit comments