toolchain/README.md

49 lines
1.8 KiB
Markdown
Raw Normal View History

2019-09-12 21:44:29 +08:00
# `rustup toolchain` Action
2019-09-15 17:24:13 +08:00
![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)
2019-09-15 01:42:34 +08:00
[![Gitter](https://badges.gitter.im/actions-rs/community.svg)](https://gitter.im/actions-rs/community)
2019-09-12 21:44:29 +08:00
This GitHub Action installs [Rust toolchain](https://github.com/rust-lang/rustup.rs#toolchain-specification).
Optionally it can set installed toolchain as a default and as an override for current directory.
## Example workflow
```yaml
on: [push]
name: build
jobs:
check:
name: Rust project
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- name: Install nightly
2019-09-15 17:24:13 +08:00
uses: actions-rs/toolchain@v1
2019-09-12 21:44:29 +08:00
with:
toolchain: nightly
override: true
```
## Inputs
* `toolchain` (*required*): Toolchain name, see [rustup page](https://github.com/rust-lang/rustup.rs#toolchain-specification) for details.\
2019-09-12 21:44:29 +08:00
Examples: `stable`, `nightly`, `nightly-2019-04-20`
* `target`: Additionally install specific target for this toolchain (ex. `x86_64-apple-darwin`)
2019-09-12 21:44:29 +08:00
* `default`: Set installed toolchain as default (executes `rustup toolchain default {TOOLCHAIN}`)
* `override`: Set installed toolchain as an override for current directory
2019-09-15 17:24:13 +08:00
## Components
If you are going to install `clippy`, `rustfmt` or any other [rustup component](https://rust-lang.github.io/rustup-components-history/),
it might not be available in latest `nightly` build;
check out the [`actions-rs/components-nightly`](https://github.com/actions-rs/components-nightly) Action,
which makes this process much easier.
## Notes
2019-09-15 17:24:13 +08:00
As `rustup` is not installed by default for [macOS environments](https://help.github.com/en/articles/virtual-environments-for-github-actions)
at the moment (2019-09-13), this Action will try its best to install it before any other operations.