@@ -113,75 +113,25 @@ jobs:
113
113
114
114
# All the following are used only when building an installer after a merge
115
115
- name : Build Msi
116
+ if : github.event_name != 'pull_request'
116
117
id : build_msi
117
118
shell : cmd
118
119
run : |
119
120
msbuild build/FLExBridge.proj /t:CleanMasterOutputDir;PreparePublishingArtifactsInternal;BuildProductBaseMsi /p:UploadFolder=${{ inputs.environment || 'Alpha' }}
120
- if : github.event_name != 'pull_request'
121
-
122
- # REVIEW: The .msi file is named with the version, there is probably a cleaner way to generate the correct filename
123
- # and after completing the work to do signing of the bundles it became clear that capturing the files in the signtool wasn't necessary
124
- - name : Prepare for msi signing
125
- shell : bash
126
- run : |
127
- echo "FILES_TO_SIGN=$(cat $FILESTOSIGNLATER)" >> $GITHUB_OUTPUT
128
- id : gathered_files
129
- if : github.event_name != 'pull_request'
130
121
131
- - name : upload-msi
132
- id : upload
133
- uses : actions/upload-artifact@v4
134
- with :
135
- name : FlexBridge.msi
136
- path : ${{ steps.gathered_files.outputs.FILES_TO_SIGN }}
137
- if-no-files-found : error
138
- overwrite : true
122
+ - name : Sign FlexBridge msi
123
+ uses : sillsdev/codesign/trusted-signing-action@v3
139
124
if : github.event_name != 'pull_request'
140
-
141
- sign-msi :
142
- name : Sign FlexBridge Installer
143
- needs : build_and_test
144
- if : github.event_name != 'pull_request'
145
- uses :
sillsdev/codesign/.github/workflows/[email protected]
146
- with :
147
- artifact : FlexBridge.msi
148
- description : ' FLEx Bridge Installer'
149
- secrets :
150
- certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
151
-
152
- build-bundles :
153
- name : Build Installer Bundles
154
- needs : sign-msi
155
- if : github.event_name != 'pull_request'
156
- runs-on : windows-latest
157
- env :
158
- FILESTOSIGNLATER : " ${{ github.workspace }}\\ filesToSign"
159
- steps :
160
- - name : Checkout Files
161
- uses : actions/checkout@v4
162
- id : checkout
163
125
with :
164
- fetch-depth : 0
165
- submodules : true
166
-
167
- - name : Downgrade Wix Toolset - remove when runner has 3.14.2
168
- # See: https://github.com/actions/runner-images/issues/9667
169
- run : |
170
- choco uninstall wixtoolset
171
- choco install wixtoolset --version 3.11.2 --allow-downgrade --force
172
- echo "C:\Program Files (x86)\WiX Toolset v3.11\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
173
-
174
- - name : Add msbuild to PATH
175
- uses : microsoft/setup-msbuild@v2
176
-
177
- - name : Download FlexBridge artifact
178
- uses : actions/download-artifact@v4
179
- with :
180
- name : FlexBridge.msi
181
- path : src/WiXInstaller/BaseInstallerBuild # Target directory for the downloaded artifact
126
+ credentials : ${{ secrets.TRUSTED_SIGNING_CREDENTIALS }}
127
+ files-folder : src/WiXInstaller/BaseInstallerBuild
128
+ files-folder-filter : FlexBridge*.msi
129
+ description : ' FLExBridge installer - SIL Global'
130
+ description-url : ' https://software.sil.org/fieldworks/help/using-sendreceive/flex-bridge/'
182
131
183
132
- name : Build Bundles
184
133
id : build_bundles
134
+ if : github.event_name != 'pull_request'
185
135
working-directory : build
186
136
shell : cmd
187
137
run : |
@@ -190,156 +140,56 @@ jobs:
190
140
191
141
- name : Extract burn engines
192
142
id : extract_engines
143
+ if : github.event_name != 'pull_request'
193
144
working-directory : BuildDir
194
145
shell : cmd
195
146
run : |
196
147
insignia -ib FlexBridge_Offline.exe -o offline-engine.exe
197
148
insignia -ib FlexBridge_Online.exe -o online-engine.exe
198
149
199
- - name : Upload Offline Engine
200
- id : upload-offline-engine
201
- uses : actions/upload-artifact@v4
202
- with :
203
- name : offline-engine
204
- path : BuildDir/offline-engine.exe
205
- if-no-files-found : error
206
- overwrite : true
150
+ - name : Sign Engines
207
151
if : github.event_name != 'pull_request'
208
-
209
- - name : Upload Offline Bundle(detatched)
210
- id : upload-offline-bundle
211
- uses : actions/upload-artifact@v4
212
- with :
213
- name : FlexBridge_Offline.exe
214
- path : BuildDir/FlexBridge_Offline.exe
215
- if-no-files-found : error
216
- overwrite : true
217
- if : github.event_name != 'pull_request'
218
-
219
- - name : Upload Online Engine
220
- id : upload-online-engine
221
- uses : actions/upload-artifact@v4
222
- with :
223
- name : online-engine
224
- path : BuildDir/online-engine.exe
225
- if-no-files-found : error
226
- overwrite : true
227
- if : github.event_name != 'pull_request'
228
-
229
- - name : Upload Online Bundle(detached)
230
- id : upload-online-bundle
231
- uses : actions/upload-artifact@v4
232
- with :
233
- name : FlexBridge_Online.exe
234
- path : BuildDir/FlexBridge_Online.exe
235
- if-no-files-found : error
236
- overwrite : true
237
- if : github.event_name != 'pull_request'
238
-
239
- sign-offline-engine :
240
- name : Sign Offline Engine
241
- needs : build-bundles
242
- if : github.event_name != 'pull_request'
243
- uses :
sillsdev/codesign/.github/workflows/[email protected]
244
- with :
245
- artifact : offline-engine
246
- description : ' FLEx Bridge Installer'
247
- secrets :
248
- certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
249
-
250
- sign-online-engine :
251
- name : Sign Online Engine
252
- needs : build-bundles
253
- if : github.event_name != 'pull_request'
254
- uses :
sillsdev/codesign/.github/workflows/[email protected]
255
- with :
256
- artifact : online-engine
257
- description : ' FLEx Bridge Installer'
258
- secrets :
259
- certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
260
-
261
- reattach-engines :
262
- runs-on : windows-latest
263
- needs : [sign-offline-engine, sign-online-engine]
264
- steps :
265
- - name : Downgrade Wix Toolset - remove when runner has 3.14.2
266
- run : |
267
- choco uninstall wixtoolset
268
- choco install wixtoolset --version 3.11.2 --allow-downgrade --force
269
- echo "C:\Program Files (x86)\WiX Toolset v3.11\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
270
-
271
- - name : Download signed online engine
272
- uses : actions/download-artifact@v4
273
- with :
274
- name : online-engine
275
- - name : Download signed offline engine
276
- uses : actions/download-artifact@v4
277
- with :
278
- name : offline-engine
279
- - name : Download Online Bundle
280
- uses : actions/download-artifact@v4
281
- with :
282
- name : FlexBridge_Online.exe
283
- - name : Download Offline Bundle
284
- uses : actions/download-artifact@v4
285
- with :
286
- name : FlexBridge_Offline.exe
287
-
152
+ uses : sillsdev/codesign/trusted-signing-action@v3
153
+ with :
154
+ credentials : ${{ secrets.TRUSTED_SIGNING_CREDENTIALS }}
155
+ files-folder : BuildDir
156
+ files-folder-filter : ' *-engine.exe'
157
+ description : ' FLExBridge installer burn engine - SIL Global'
158
+ description-url : ' https://software.sil.org/fieldworks/help/using-sendreceive/flex-bridge/'
159
+
288
160
- name : Reattach Engines
161
+ if : github.event_name != 'pull_request'
162
+ working-directory : BuildDir
289
163
shell : cmd
290
164
run : |
291
165
insignia -ab online-engine.exe FlexBridge_Online.exe -o FlexBridge_Online.exe
292
166
insignia -ab offline-engine.exe FlexBridge_Offline.exe -o FlexBridge_Offline.exe
293
167
294
- - name : Upload Online Bundle(attached)
295
- id : upload-online-bundle
296
- uses : actions/upload-artifact@v4
297
- with :
298
- name : FlexBridge_Online.exe
299
- path : FlexBridge_Online.exe
300
- if-no-files-found : error
301
- overwrite : true
168
+ - name : Sign Offline Bundle
302
169
if : github.event_name != 'pull_request'
303
-
304
- - name : Upload Offline Bundle(attached)
305
- id : upload-offline-bundle
170
+ uses : sillsdev/codesign/trusted-signing-action@v3
171
+ with :
172
+ credentials : ${{ secrets.TRUSTED_SIGNING_CREDENTIALS }}
173
+ files-folder : src/WiXInstaller/BaseInstallerBuild
174
+ files-folder-filter : FlexBridge_*.exe
175
+ description : ' FLExBridge installer - SIL Global'
176
+ description-url : ' https://software.sil.org/fieldworks/help/using-sendreceive/flex-bridge/'
177
+
178
+ - name : Sign Offline Bundle
179
+ needs : reattach-engines
180
+ if : github.event_name != 'pull_request'
181
+ uses :
sillsdev/codesign/.github/workflows/[email protected]
182
+ with :
183
+ artifact : FlexBridge_Offline.exe
184
+ description : ' FLEx Bridge Installer'
185
+ secrets :
186
+ certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
187
+
188
+ - name : Upload Signed Installers
306
189
uses : actions/upload-artifact@v4
307
- with :
308
- name : FlexBridge_Offline.exe
309
- path : FlexBridge_Offline.exe
310
- if-no-files-found : error
311
- overwrite : true
312
190
if : github.event_name != 'pull_request'
313
-
314
- - name : Cleanup Offline Engine
315
- uses : geekyeggo/delete-artifact@v5
316
191
with :
317
- name : offline-engine
318
-
319
- - name : Cleanup Online Engine
320
- uses : geekyeggo/delete-artifact@v5
321
- with :
322
- name : online-engine
323
-
324
- sign-offline-bundle :
325
- name : Sign Offline Bundle
326
- needs : reattach-engines
327
- if : github.event_name != 'pull_request'
328
- uses :
sillsdev/codesign/.github/workflows/[email protected]
329
- with :
330
- artifact : FlexBridge_Offline.exe
331
- description : ' FLEx Bridge Installer'
332
- secrets :
333
- certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
334
-
335
- sign-online-bundle :
336
- name : Sign Online Bundle
337
- needs : reattach-engines
338
- if : github.event_name != 'pull_request'
339
- uses :
sillsdev/codesign/.github/workflows/[email protected]
340
- with :
341
- artifact : FlexBridge_Online.exe
342
- description : ' FLEx Bridge Installer'
343
- secrets :
344
- certificate : ${{ secrets.CODESIGN_LSDEVSECTIGOEV }}
192
+ name : nuget-packages
193
+ path : output/*nupkg
194
+ if-no-files-found : warn
345
195
0 commit comments