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.