mirror of
https://github.com/actions-rs/cargo.git
synced 2024-11-14 05:26:33 +02:00
2.2 KiB
2.2 KiB
Rust cargo
Action
This GitHub Action runs specified cargo
command on a Rust language project.
Example workflow
on: [push]
name: CI
jobs:
build_and_test:
name: Rust project
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions-rs/cargo@v1
with:
command: build
arguments: --release --all-features
Inputs
command
(required) - Cargo command to run (ex.check
orbuild
)toolchain
- Rust toolchain to use (without the+
sign, ex.nightly
);
Override or system toolchain will be used if omitted.args
- Arguments for the cargo commanduse-cross
- Usecross
instead ofcargo
(default:false
)
Virtual environments
Note that cargo
is not available by default for some virtual environments;
for example, as for 2019-09-15, macOS
env is missing it.
You can use actions-rs/toolchain
to install the Rust toolchain with cargo
included.
Cross
In order to make cross-compilation 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 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@master
- 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