Skip to content

Commit 6379c77

Browse files
committed
Add Github release workflow
1 parent 39d99b1 commit 6379c77

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

.github/workflows/release.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- '*.*.*'
7+
8+
env:
9+
CARGO_TERM_COLOR: always
10+
11+
jobs:
12+
build:
13+
runs-on: ${{ matrix.os }}
14+
strategy:
15+
matrix:
16+
include:
17+
- os: ubuntu-22.04
18+
cargo_extra_flags: --target x86_64-unknown-linux-musl
19+
output_executable: target/x86_64-unknown-linux-musl/release/riscv_trace_debugger
20+
output_executable_upload_as: riscv_trace_debugger-linux-x86_64
21+
- os: macos-26
22+
output_executable: target/release/riscv_trace_debugger
23+
output_executable_upload_as: riscv_trace_debugger-mac-arm
24+
- os: windows-2025
25+
output_executable: target/release/riscv_trace_debugger.exe
26+
output_executable_upload_as: riscv_trace_debugger-windows-x86_64.exe
27+
steps:
28+
- uses: actions/checkout@v6
29+
30+
- name: Install Musl target
31+
if: ${{ matrix.os == 'ubuntu-22.04' }}
32+
run: >
33+
sudo apt-get install musl-tools &&
34+
rustup target add x86_64-unknown-linux-musl &&
35+
musl-gcc --version
36+
37+
- name: Versions
38+
run: cargo --version && rustc --version
39+
40+
- name: Build
41+
run: cargo build --verbose --release --locked ${{ matrix.cargo_extra_flags }}
42+
43+
- name: Test
44+
run: cargo test --verbose --release --locked ${{ matrix.cargo_extra_flags }}
45+
46+
- name: Rename Output
47+
shell: pwsh
48+
run: Move-Item -Path "${{ matrix.output_executable }}" -Destination "target/${{ matrix.output_executable_upload_as }}"
49+
50+
- name: Release
51+
uses: softprops/action-gh-release@v2
52+
env:
53+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
54+
with:
55+
files: target/${{ matrix.output_executable_upload_as }}
56+
fail_on_unmatched_files: true

0 commit comments

Comments
 (0)