mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
ci(windows): Upload Windows debug symbols (#3467)
Closes #3450 I was able to get stacktraces from a crash generated inside my VM. It picked out the correct line in gui.rs where the crash was triggered.  
This commit is contained in:
9
.github/workflows/_rust.yml
vendored
9
.github/workflows/_rust.yml
vendored
@@ -101,9 +101,11 @@ jobs:
|
||||
# In release mode the name comes from tauri.conf.json
|
||||
cp "../target/release/Firezone.exe" "${{ env.BINARY_DEST_PATH }}-x64.exe"
|
||||
cp "../target/release/bundle/msi/*.msi" "${{ env.BINARY_DEST_PATH }}-x64.msi"
|
||||
cp "../target/release/firezone_windows_client.pdb" "${{ env.BINARY_DEST_PATH }}-x64.pdb"
|
||||
|
||||
Get-FileHash ${{ env.BINARY_DEST_PATH }}-x64.exe -Algorithm SHA256 | Select-Object Hash > ${{ env.BINARY_DEST_PATH }}-x64.exe.sha256sum.txt
|
||||
Get-FileHash ${{ env.BINARY_DEST_PATH }}-x64.msi -Algorithm SHA256 | Select-Object Hash > ${{ env.BINARY_DEST_PATH }}-x64.msi.sha256sum.txt
|
||||
Get-FileHash ${{ env.BINARY_DEST_PATH }}-x64.pdb -Algorithm SHA256 | Select-Object Hash > ${{ env.BINARY_DEST_PATH }}-x64.pdb.sha256sum.txt
|
||||
|
||||
# This might catch regressions in #3384, depending how CI runners
|
||||
# handle exit codes
|
||||
@@ -122,6 +124,13 @@ jobs:
|
||||
path: |
|
||||
${{ github.workspace }}/rust/windows-client/windows-client-x64.msi
|
||||
${{ github.workspace }}/rust/windows-client/windows-client-x64.msi.sha256sum.txt
|
||||
- name: Save Windows debug symbols
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: windows-client-x64-pdb
|
||||
path: |
|
||||
${{ github.workspace }}/rust/windows-client/windows-client-x64.pdb
|
||||
${{ github.workspace }}/rust/windows-client/windows-client-x64.pdb.sha256sum.txt
|
||||
|
||||
smoke-test-relay:
|
||||
runs-on: ubuntu-22.04
|
||||
|
||||
2
.github/workflows/cd.yml
vendored
2
.github/workflows/cd.yml
vendored
@@ -262,6 +262,8 @@ jobs:
|
||||
- uses: ./.github/actions/setup-node
|
||||
- name: Build release binaries
|
||||
run: |
|
||||
# Build Windows Tauri GUI
|
||||
|
||||
pnpm install
|
||||
pnpm build
|
||||
|
||||
|
||||
@@ -3,6 +3,15 @@
|
||||
//! Mostly copied from <https://github.com/EmbarkStudios/crash-handling/blob/main/minidumper/examples/diskwrite.rs>
|
||||
//!
|
||||
//! TODO: Capture crash dumps on panic.
|
||||
//!
|
||||
//! To get human-usable stack traces out of a dump, do this:
|
||||
//! (Copied from <https://github.com/firezone/firezone/issues/3111#issuecomment-1887975171>)
|
||||
//!
|
||||
//! - Get the pdb corresponding to the client exe
|
||||
//! - `cargo install dump_syms`
|
||||
//! - Use dump_syms to convert the pdb to a syms file
|
||||
//! - Compile `minidump-stackwalk` with PR 891 merged
|
||||
//! - `minidump-stackwalker --symbols-path firezone.syms crash.dmp`
|
||||
|
||||
use crate::client::settings::app_local_data_dir;
|
||||
use anyhow::{anyhow, bail, Context, Result};
|
||||
|
||||
Reference in New Issue
Block a user