4141 msvc : [ msvc-2022 ]
4242 build_type : [ Debug, Release ]
4343 arch : [ x64, x86 ]
44- shard : [Core1, Core2, Core3, Compute, AIPlatform, Shard1, Shard2, Shard3, Other]
44+ shard : [Core1, Core2, Core3, Core4, Compute, AIPlatform, Shard1, Shard2, Shard3, Shard4 , Other]
4545 exclude :
4646 # Also skip shards (Compute and Other) that contain only generated code.
4747 - exclude-from-full-trick : ${{ ! inputs.full-matrix }}
5454 shard : Shard2
5555 - exclude-from-full-trick : ${{ ! inputs.full-matrix }}
5656 shard : Shard3
57+ - exclude-from-full-trick : ${{ ! inputs.full-matrix }}
58+ shard : Shard4
5759 - exclude-from-full-trick : ${{ ! inputs.full-matrix }}
5860 shard : Other
5961 # No need to duplicate testing with x86 mode and Debug mode
8284 echo "vcpkg-version=$(cat ci/etc/vcpkg-version.txt)" >> "${GITHUB_OUTPUT}"
8385 core1_features=(bigtable pubsub pubsublite)
8486 core2_features=(spanner)
85- core3_features=(storage storage_grpc)
87+ core3_features=(storage)
88+ core4_features=(storage_grpc)
8689 # These are the libraries with the most "clients". To build the list
8790 # run something like this and create shards:
8891 #
@@ -169,6 +172,45 @@ jobs:
169172 vision
170173 workflows
171174 )
175+ shard4_features=(
176+ accessapproval
177+ accesscontextmanager
178+ advisorynotifications
179+ alloydb
180+ apigateway
181+ apigeeconnect
182+ apikeys
183+ apphub
184+ artifactregistry
185+ assuredworkloads
186+ backupdr
187+ baremetalsolution
188+ batch
189+ certificatemanager
190+ cloudquotas
191+ commerce
192+ confidentialcomputing
193+ config
194+ connectors
195+ contactcenterinsights
196+ container
197+ datafusion
198+ datamigration
199+ datastream
200+ deploy
201+ developerconnect
202+ dlp
203+ documentai
204+ domains
205+ edgecontainer
206+ edgenetwork
207+ essentialcontacts
208+ filestore
209+ financialservices
210+ gkebackup
211+ gkeconnect
212+ gkehub
213+ )
172214 if [[ "${{ matrix.shard }}" == "Core1" ]]; then
173215 features="$(printf ",%s" "${core1_features[@]}")"
174216 echo "features=${features:1}" >> "${GITHUB_OUTPUT}"
@@ -178,6 +220,9 @@ jobs:
178220 elif [[ "${{ matrix.shard }}" == "Core3" ]]; then
179221 features="$(printf ",%s" "${core3_features[@]}")"
180222 echo "features=${features:1}" >> "${GITHUB_OUTPUT}"
223+ elif [[ "${{ matrix.shard }}" == "Core4" ]]; then
224+ features="$(printf ",%s" "${core4_features[@]}")"
225+ echo "features=${features:1}" >> "${GITHUB_OUTPUT}"
181226 elif [[ "${{matrix.shard}}" == "Compute" ]]; then
182227 echo "features=compute" >> "${GITHUB_OUTPUT}"
183228 elif [[ "${{matrix.shard}}" == "AIPlatform" ]]; then
@@ -191,15 +236,20 @@ jobs:
191236 elif [[ "${{matrix.shard}}" == "Shard3" ]]; then
192237 features="$(printf ",%s" "${shard3_features[@]}")"
193238 echo "features=${features:1}" >> "${GITHUB_OUTPUT}"
239+ elif [[ "${{matrix.shard}}" == "Shard4" ]]; then
240+ features="$(printf ",%s" "${shard4_features[@]}")"
241+ echo "features=${features:1}" >> "${GITHUB_OUTPUT}"
194242 else
195243 skipped_features=("${core1_features[@]}")
196244 skipped_features+=("${core2_features[@]}")
197245 skipped_features+=("${core3_features[@]}")
246+ skipped_features+=("${core4_features[@]}")
198247 skipped_features+=(compute)
199248 skipped_features+=(aiplatform)
200249 skipped_features+=("${shard1_features[@]}")
201250 skipped_features+=("${shard2_features[@]}")
202251 skipped_features+=("${shard3_features[@]}")
252+ skipped_features+=("${shard4_features[@]}")
203253 # We use vcpkg in this build, which ships with Protobuf v21.x.
204254 # Both `asset` and `channel` require Protobuf >= 23.x to compile on
205255 # Windows.
@@ -210,6 +260,12 @@ jobs:
210260 - name : Pre Build Disk Space
211261 shell : bash
212262 run : df -m
263+ - name : Download and Install CMake
264+ shell : bash
265+ run : |
266+ choco install -y --allow-downgrade cmake --version 3.31.6 || \
267+ (sleep 60 ; choco install -y --allow-downgrade cmake --version 3.31.6) || \
268+ (sleep 120 ; choco install -y --allow-downgrade cmake --version 3.31.6)
213269 - name : Download and Install sccache
214270 if : ${{ inputs.sccache-mode != 'DISABLED' }}
215271 working-directory : " ${{runner.temp}}"
0 commit comments