5252 cache-dependency-path : package-lock.json
5353
5454 - name : Install npm dependencies
55- run : npm ci
55+ run : npm ci --omit=optional
5656
5757 - name : Run test suite
5858 run : npm test -- --runInBand
@@ -77,19 +77,16 @@ jobs:
7777 cache-dependency-path : package-lock.json
7878
7979 - name : Install npm dependencies
80- run : npm ci
80+ run : npm ci --omit=optional
8181
8282 - name : Build TypeScript artifacts
8383 run : npm run build
8484
85- - name : Build local prebuilds for tarball verification
86- run : npm run build:prebuilds
87-
88- - name : Verify package tarball
85+ - name : Verify root package tarball
8986 run : npm run verify:pack
9087
9188 prebuild :
92- name : prebuild-${{ matrix.platformDir }}-node-${{ matrix.nodeVersion }}
89+ name : prebuild-${{ matrix.packageName }}
9390 runs-on : ${{ matrix.runner }}
9491 needs : plan
9592 strategy :
@@ -109,86 +106,13 @@ jobs:
109106 cache-dependency-path : package-lock.json
110107
111108 - name : Install npm dependencies
112- run : npm ci
113-
114- - name : Build TypeScript artifacts
115- run : npm run build
116-
117- - name : Build platform prebuild
118- env :
119- PREBUILD_TARGETS : ${{ matrix.prebuildTargets }}
120- run : npm run build:prebuilds
121-
122- - name : Verify prebuild platform artifact
123- env :
124- PREBUILD_TARGETS : ${{ matrix.prebuildTargets }}
125- run : npm run verify:prebuild
126-
127- - name : Upload prebuild artifact
128- uses : actions/upload-artifact@v7
129- with :
130- name : prebuild-${{ matrix.platformDir }}
131- path : prebuilds
132- if-no-files-found : error
133-
134- prebuild-coverage :
135- name : prebuild-coverage
136- runs-on : ubuntu-latest
137- needs : prebuild
138- steps :
139- - name : Checkout
140- uses : actions/checkout@v6
141-
142- - name : Download prebuild artifacts
143- uses : actions/download-artifact@v8
144- with :
145- pattern : prebuild-*
146- path : downloaded-prebuilds
147- merge-multiple : true
148-
149- - name : Merge prebuild artifacts
150- run : PREBUILD_ARTIFACT_ROOT=downloaded-prebuilds PREBUILD_MERGED_DIR=merged-prebuilds node ./scripts/merge-prebuild-artifacts.js
109+ run : npm ci --omit=optional
151110
152- - name : Verify prebuild release coverage
153- run : node ./scripts/verify-prebuild-coverage.js --base-dir=merged-prebuilds --release-plan
111+ - name : Build platform prebuilds
112+ run : npm run build:prebuilds -- --package=${{ matrix.packageName }}
154113
155- - name : Upload merged prebuild artifact
156- uses : actions/upload-artifact@v7
157- with :
158- name : merged-prebuilds
159- path : merged-prebuilds
160- if-no-files-found : error
161-
162- package :
163- name : package
164- runs-on : ubuntu-latest
165- needs : [test, pack-verify, prebuild-coverage]
166- steps :
167- - name : Checkout
168- uses : actions/checkout@v6
169-
170- - name : Setup Node.js
171- uses : actions/setup-node@v6
172- with :
173- node-version : 24.14.0
174- cache : npm
175- cache-dependency-path : package-lock.json
176-
177- - name : Install npm dependencies
178- run : npm ci
114+ - name : Verify platform prebuilds
115+ run : npm run verify:prebuild -- --package=${{ matrix.packageName }}
179116
180- - name : Download merged prebuild artifact
181- uses : actions/download-artifact@v8
182- with :
183- name : merged-prebuilds
184- path : .
185-
186- - name : Prepare merged prebuild directory
187- run : |
188- rm -rf prebuilds
189- mv merged-prebuilds prebuilds
190-
191- - name : Pack release tarball
192- env :
193- FUNCTION_LOCATION_PREBUILDS_READY : ' 1'
194- run : npm pack --silent
117+ - name : Verify platform package tarball
118+ run : node ./scripts/verify-pack-tarball.js --package-dir=${{ matrix.packageDir }}
0 commit comments