Sponsoring MIT licensed Gitter Continuous integration Dependabot enabled
This GitHub Action runs specified cargo
command on a Rust language project.
Table of Contents
on: [push] name: CI jobs: build_and_test: name: Rust project runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: stable - uses: actions-rs/cargo@v1 with: command: build args: --release --all-features
Note that this Action is not required usually
and you can just use run
step instead as in example below:
jobs: build_and_test: name: Rust project runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: stable - run: cargo build --release --all-features
Why would you want to use this Action instead:
- Transparent
crossinstallation and execution withuse-cross: trueinput enabled - Warnings and errors issued by
cargowill be displayed in GitHub UI
| Name | Required | Description | Type | Default |
|---|---|---|---|---|
command |
β | Cargo command to run, ex. check or build |
string | |
toolchain |
Rust toolchain name to use | string | ||
args |
Arguments for the cargo command | string | ||
use-cross |
Use cross instead of cargo |
bool | false |
By default this Action will call whatever cargo binary is available
in the current virtual environment.
You can use actions-rs/toolchain
to install specific Rust toolchain with cargo included.
In order to make cross-compile an easy process,
this Action can install cross
tool on demand if use-cross input is enabled; cross executable will be invoked
then instead of cargo automatically.
All consequent calls of this Action in the same job
with use-cross: true input enabled will use the same cross installed.
on: [push] name: ARMv7 build jobs: linux_arm7: name: Linux ARMv7 runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions-rs/toolchain@v1 with: toolchain: stable target: armv7-unknown-linux-gnueabihf override: true - uses: actions-rs/cargo@v1 with: use-cross: true command: build args: --target armv7-unknown-linux-gnueabihf
This Action is distributed under the terms of the MIT license, see LICENSE for details.
Any contributions are welcomed!
If you want to report a bug or have a feature request, check the Contributing guide.
You can also support author by funding the ongoing project work, see Sponsoring.