on: [push, pull_request]
name: Build and Test checks
env:
CARGO_TERM_COLOR: always
jobs:
rustfmt:
name: Rustfmt check
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
profile: minimal
- name: "Rustfmt"
uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check
build_and_test:
name: "Build and test"
runs-on: ubuntu-20.04
strategy:
matrix:
features: [
"parse-comments",
"parse-trailing-comment",
"parse-trailing-comment,parse-comments",
"parse-checksum",
"parse-trailing-comment,parse-checksum",
"parse-trailing-comment,parse-comments,parse-checksum",
"optional-value",
"string-value",
"parse-parameters",
"parse-parameters,optional-value",
"parse-parameters,string-value",
"parse-expressions",
"parse-expressions,parse-parameters",
"parse-comments,parse-trailing-comment,parse-checksum,parse-parameters,parse-expressions,optional-value,string-value"
]
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: thumbv7em-none-eabihf
override: true
profile: minimal
- name: "Clippy"
uses: actions-rs/cargo@v1
with:
command: clippy
args: --examples --features ${{ matrix.features }} -- -Dwarnings
- name: "Build"
uses: actions-rs/cargo@v1
with:
command: build
args: --release --no-default-features --features ${{ matrix.features }}
- name: "Test"
uses: actions-rs/cargo@v1
with:
command: test
args: --target x86_64-unknown-linux-gnu --features ${{ matrix.features }}