Merge pull request #284 from 00xc/clippy #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Rust | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
check: | |
name: Check | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install latest stable | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
target: x86_64-unknown-none | |
profile: minimal | |
override: true | |
components: rustfmt, rust-src, clippy | |
# ubuntu-latest does not have binutils 2.39, which we need for | |
# ld to work, so build all the objects without performing the | |
# final linking step. | |
- name: Build | |
run: make FEATURES="default,enable-gdb" bin/svsm-kernel.elf stage1/stage1.o stage1/reset.o | |
- name: Run tests | |
run: make test | |
- name: Format | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check | |
- name: Clippy on no_std x86_64-unknown-none | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --workspace --exclude igvmbuilder --exclude svsm-fuzz --all-features -- -D warnings | |
- name: Clippy on std x86_64-unknown-linux-gnu | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --workspace --all-features --exclude svsm --exclude svsm-fuzz --target=x86_64-unknown-linux-gnu -- -D warnings | |
- name: Clippy on svsm-fuzz | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --package svsm-fuzz --all-features --target=x86_64-unknown-linux-gnu -- -D warnings | |
env: | |
RUSTFLAGS: --cfg fuzzing | |
- name: Clippy on tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --workspace --all-features --tests --target=x86_64-unknown-linux-gnu -- -D warnings | |
- name: Check documentation | |
run: make doc | |
env: | |
RUSTDOCFLAGS: -D warnings | |
nightly-check: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install latest nightly | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly | |
target: x86_64-unknown-none | |
profile: minimal | |
override: true | |
components: rustfmt | |
- name: Format doctests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check --config "format_code_in_doc_comments=true" |