permissions:
contents: read
on:
push:
branches: [main]
pull_request:
schedule:
- cron: '7 7 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
name: rolling
jobs:
nightly:
runs-on: ubuntu-latest
name: ubuntu / nightly
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 with:
submodules: true
- name: Install nightly
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 with:
toolchain: nightly
- name: cargo generate-lockfile
if: hashFiles('Cargo.lock') == ''
run: cargo generate-lockfile
- name: Install Valgrind
run: sudo apt update && sudo apt install valgrind
- uses: cargo-bins/cargo-binstall@main
- name: Install iai-callgrind-runner
run: ./.github/scripts/install_iai_callgrind_runner.sh
- name: cargo test --locked
run: cargo test --locked --all-features --all-targets
update:
runs-on: ubuntu-latest
name: ubuntu / beta / updated
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 with:
submodules: true
- name: Install beta
if: hashFiles('Cargo.lock') != ''
uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 with:
toolchain: beta
- name: cargo update
if: hashFiles('Cargo.lock') != ''
run: cargo update
- name: Install Valgrind
run: sudo apt update && sudo apt install valgrind
- uses: cargo-bins/cargo-binstall@main
- name: Install Valgrind
run: sudo apt update && sudo apt install valgrind
- name: Install iai-callgrind-runner
run: ./.github/scripts/install_iai_callgrind_runner.sh
- name: cargo test
if: hashFiles('Cargo.lock') != ''
run: cargo test --locked --all-features --all-targets
env:
RUSTFLAGS: -D deprecated