-
Notifications
You must be signed in to change notification settings - Fork 15
45 lines (42 loc) · 1.26 KB
/
build.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
DPDK_VERSION: 22.11.4
jobs:
build:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt update && sudo apt install -y linux-headers-generic build-essential libnuma-dev git meson python3-pyelftools curl libclang-dev clang llvm-dev libbsd-dev
- name: Install DPDK
run: |
wget -O dpdk.tar.xz https://fast.dpdk.org/rel/dpdk-${DPDK_VERSION}.tar.xz
mkdir dpdk-src
tar -xvJf dpdk.tar.xz -C dpdk-src --strip-components=1
cd dpdk-src
meson setup build
ninja -C build
sudo ninja -C build install
sudo ldconfig
rm -rf dpdk-src
- name: Install minimal Rust with clippy and rustfmt
run: |
curl -f -sSf https://sh.rustup.rs | bash -s -- -y --profile minimal --component clippy rustfmt
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Check
run: |
clang --version
llvm-config --version
cargo --version
gcc --version
- name: Build
run: cargo build --verbose
- name: Run tests
run: cargo test --verbose