create dump syms action

This commit is contained in:
qimiko 2024-02-02 16:29:22 -07:00
parent a5326b7d9a
commit 5a286a1300
No known key found for this signature in database
GPG key ID: D2D404DD810FE0E3
2 changed files with 50 additions and 0 deletions

View file

@ -0,0 +1,42 @@
name: Setup Breakpad Dump Symbols
description: Sets up + builds the dump_syms utility from Breakpad
inputs:
dump_syms_version:
description: "Revision of mozilla/dump_syms repository to fetch"
required: true
default: "v2.2.2"
outputs:
binary-path:
description: "Path of the dump_syms utility, including the executable."
value: ${{ jobs.get-path.outputs.binary-path }}
runs:
using: "composite"
steps:
- uses: dtolnay/rust-toolchain@stable
id: toolchain
- uses: actions/cache@v4
id: binary-cache
with:
path: "./dump_syms/target/release"
key: dump_syms-${{ inputs.dump_syms_version }}-${{steps.toolchain.outputs.cachekey}}
- uses: actions/checkout@v4
if: steps.binary-cache.outputs.cache-hit != 'true'
with:
repository: "mozilla/dump_syms"
ref: ${{ inputs.dump_syms_version }}
path: "./dump_syms"
- run: cargo build --release
shell: bash
if: steps.binary-cache.outputs.cache-hit != 'true'
working-directory: "./dump_syms"
- run: echo "binary-path=$(realpath target/release/dump_syms)" >> "$GITHUB_OUTPUT"
shell: bash
id: get-path
working-directory: "./dump_syms"

View file

@ -130,6 +130,11 @@ jobs:
sudo apt install ninja-build
if: matrix.config.id == 'android32' || matrix.config.id == 'android64'
- name: Setup Breakpad Tools
uses: ./.github/actions/setup-dump-sym
id: breakpad-tools
if: matrix.config.id == 'android32' || matrix.config.id == 'android64'
- name: Configure
run: >
cmake -B ${{ github.workspace }}/build
@ -142,6 +147,9 @@ jobs:
cmake --build . --config RelWithDebInfo --parallel
rm ${{ github.workspace }}/bin/nightly/resources/.geode_cache
- name: Dump symbols
run: "${{ steps.breakpad-tools.outputs.binary-path }} ./bin/nightly/Geode.${{ matrix.config.id }}.so -o ./bin/nightly/Geode.${{ matrix.config.id }}.so.sym"
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with: