From 1d88faf66fe9dd6c5fad5fe1cfa8f446a7916f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zolt=C3=A1n=20Papp?= Date: Wed, 20 May 2026 12:17:11 +0200 Subject: [PATCH] [ci] Stage WebView2 bootstrapper in test_windows_installer client/installer.nsis:317 calls `File "MicrosoftEdgeWebview2Setup.exe"` and client/netbird.wxs references the same payload. In the release pipeline that file is generated by `wails3 generate webview2bootstrapper` inside netbirdio/sign-pipelines; the netbird repo's test_windows_installer job never ran that step, so makensis aborted with: Error in macro nb.webview2runtime on macroline 21 Error in script "...\client\installer.nsis" on line 325 Mirror the sign-pipelines recipe: set up Go, install wails3 (version derived from go.mod so the bootstrapper always matches the linked runtime), then stage the bootstrapper into client/ before the makensis step runs. --- .github/workflows/release.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7c164000e..67fa1513f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -580,6 +580,28 @@ jobs: if: matrix.arch == 'amd64' run: 7z x -o"${{ github.workspace }}/NSIS_Plugins" "${{ github.workspace }}/ShellExecAsUser_amd64-Unicode.7z" + - name: Set up Go for wails3 CLI + uses: actions/setup-go@v5 + with: + go-version-file: "go.mod" + cache: false + + - name: Install wails3 CLI + # Version derived from go.mod so the bootstrapper payload always + # matches the wails runtime the binary links against. + shell: bash + run: | + WAILS_VERSION=$(go list -m -f '{{.Version}}' github.com/wailsapp/wails/v3) + go install github.com/wailsapp/wails/v3/cmd/wails3@$WAILS_VERSION + + - name: Stage WebView2 bootstrapper for installers + # Both client/installer.nsis and client/netbird.wxs reference + # client/MicrosoftEdgeWebview2Setup.exe. wails3 writes it there. + # The signing pipeline (netbirdio/sign-pipelines) does the same + # step for release builds; this mirrors it for PR sanity testing. + shell: bash + run: wails3 generate webview2bootstrapper -dir client + - name: Build NSIS installer uses: joncloud/makensis-action@v3.3 with: