Skip to content
This repository was archived by the owner on Feb 21, 2026. It is now read-only.

Commit b52a41f

Browse files
committed
misc: Added Linux-based CI using GHA
1 parent b290889 commit b52a41f

1 file changed

Lines changed: 64 additions & 0 deletions

File tree

.github/workflows/build-linux.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: Build Linux
2+
3+
on:
4+
push:
5+
branches:
6+
- 'main'
7+
pull_request:
8+
branches:
9+
- 'main'
10+
workflow_dispatch:
11+
12+
concurrency:
13+
group: ${{ github.workflow }}-${{ github.job }}-${{ github.ref }}
14+
cancel-in-progress: true
15+
16+
jobs:
17+
build-linux:
18+
name: '${{ matrix.os.id }}'
19+
runs-on: ${{ matrix.os.id }}
20+
defaults:
21+
run:
22+
shell: bash
23+
strategy:
24+
matrix:
25+
os:
26+
- {id: ubuntu-22.04, name: jammy}
27+
- {id: ubuntu-24.04, name: noble}
28+
fail-fast: false
29+
steps:
30+
- name: Runtime environment
31+
env:
32+
WORKSPACE: ${{ github.workspace }}
33+
run: |
34+
echo "$HOME/.local/bin" >> $GITHUB_PATH
35+
echo "GITHUB_WORKSPACE=`pwd`" >> $GITHUB_ENV
36+
- name: Checkout bmputil
37+
uses: actions/checkout@v5
38+
with:
39+
lfs: true
40+
submodules: true
41+
- name: Setup Rust
42+
run: rustup update stable
43+
- name: Install cargo-llvm-cov
44+
uses: taiki-e/install-action@v2
45+
with:
46+
tool: cargo-llvm-cov
47+
- name: Version tools
48+
run: |
49+
cargo --version
50+
rustc --version
51+
cargo llvm-cov --version
52+
- name: Build
53+
run: cargo b -r
54+
- name: Test
55+
run: cargo t
56+
- name: Collect code coverage
57+
run: cargo llvm-cov --all-features --workspace --lcov --output-path lcov.info
58+
- name: Codecov
59+
if: success() && github.repository == 'blackmagic-debug/bmputil'
60+
uses: codecov/codecov-action@v3
61+
with:
62+
files: lcov.info
63+
fail_ci_if_error: true
64+
token: ${{ secrets.CODECOV_TOKEN }}

0 commit comments

Comments
 (0)