name: Rust
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ${{ matrix.runner }}
strategy:
matrix:
runner: [ ubuntu-latest, ubuntu-20.04 ]
steps:
- uses: actions/checkout@v2
- name: Check Linux version
run: uname -r
- name: Setup access to /dev/userfaultfd
if: ${{ matrix.runner == 'ubuntu-latest' }}
run: sudo setfacl -m u:${USER}:rw /dev/userfaultfd
- name: Build
run: cargo build --verbose
- name: Run tests (Linux 4.11 support)
run: cargo test --verbose
- name: Run tests (Linux 4.14 support)
run: cargo test --verbose --features linux4_14
- name: Run tests (Linux 5.7 support)
if: ${{ matrix.runner == 'ubuntu-latest' }}
run: cargo test --verbose --features linux5_7
- name: Run tests (Linux 5.7 support)
if: ${{ matrix.runner == 'ubuntu-20.04' }}
run:
sudo apt update &&
sudo apt install -y linux-headers-5.11.0-25-generic &&
export LINUX_HEADERS=/usr/src/linux-headers-5.11.0-25-generic &&
cargo test --verbose --features linux5_7
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Cargo Audit
run: cargo install cargo-audit
- name: Audit
run: cargo audit