components-nightly
components-nightly copied to clipboard
⚙️ GitHub Action for searching nightly component availability
rust-components-nightly Action
This GitHub Action finds the latest Rust nightly build with the requested component available.
Deprecation notice
Since actions-rs/toolchain
Action is now utilizes rustup ability to find the most recent nightly build
with multiple components available, this Action is deprecated now.
Consider removing it from your workflows and use actions-rs/toolchain directly.
For example, instead of
steps:
- uses: actions/checkout@master
- id: component
uses: actions-rs/components-nightly@v1
with:
component: clippy
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ steps.component.outputs.toolchain }}
override: true
you can now tune actions-rs/toolchain action:
steps:
- uses: actions/checkout@master
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
components: clippy
override: true
See Components section for more.
This Action will not be updated anymore, but will be leaved as is in order not to break workflows, which are using it already.
Background
Ever had the problem when your nightly build breaks because today nightly
does not has the clippy available? With this Action you can find the most recent
nightly build with the clippy available.
Found toolchain name will be set as an Action output,
ex. nightly-2019-09-13-x86_64-unknown-linux-gnu.
Note that this Action does not do anything else with the found toolchain,
you need to install it / set as an override manually, for example,
with a actions-rs/toolchain Action.
Example workflow
on: [push]
name: nightly clippy
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- id: component
uses: actions-rs/components-nightly@v1
with:
component: clippy
- uses: actions-rs/toolchain@v1
with:
toolchain: ${{ steps.component.outputs.toolchain }}
override: true
Inputs
| Name | Required | Description | Type | Default |
|---|---|---|---|---|
component |
✓ | Component name to search for | string | |
target |
Rust target triple (see Target input section below) | string | host-dependant |
Target input
If the target input is omitted, default target triple for the current host will be used:
| Virtual environment | Target triple |
|---|---|
windows-latest / windows-2019 |
x86_64-pc-windows-msvc |
windows-2016 |
x86_64-pc-windows-msvc |
ubuntu-latest / ubuntu-18.04 |
x86_64-unknown-linux-gnu |
ubuntu-16.04 |
x86_64-unknown-linux-gnu |
macOS-latest / macOS-10.14 |
x86_64-apple-darwin |
Outputs
| Name | Description | Type |
|---|---|---|
toolchain |
Most recent nightly toolchain name with the requested component available,ex. nightly-2019-09-13-x86_64-unknown-linux-gnu |
string |
command |
Cargo command to call this component (might be useful when you need to install rustfmt but call the cargo fmt then) |
string |