This is a Rust application example which is using GitHub Actions for CI.
All workflows here can be seen at the Actions tab and their configurations are here.
NOTE: All jobs there are using continue-on-error: true
in order to execute the workflow completely even if there were any errors.
Consider removing these lines in your own workflows.
Based on the "Quickstart" recipe, represents minimal reasonable CI suite for any Rust project.
Based on the "MSRV" recipe,
same as "Quickstart" workflow, but both for stable
and MSRV (Minimal Supported Rust version) toolchains.
Based on the "Nightly lints" recipe,
searches for the most recent nightly
toolchain with clippy
and rustfmt
available
in order to execute linters.
@actions-rs/cargo
Action
can install cross
on demand.
Workflow uses this "magic" option to build application for armv7-unknown-linux-gnueabihf
and powerpc64-unknown-linux-gnu
targets.
This workflow is using -Z profile
feature
and grcov
tool
to collect and aggregate code coverage data for multi-platform builds,
which is pushed to the coveralls.io later.