mirror of
https://github.com/actions-rust-lang/setup-rust-toolchain.git
synced 2024-12-26 17:00:34 +01:00
Merge pull request #32 from gruebel/add-workspaces
This commit is contained in:
commit
84e65ce315
6 changed files with 59 additions and 8 deletions
17
.github/workflows/ci.yml
vendored
17
.github/workflows/ci.yml
vendored
|
@ -87,3 +87,20 @@ jobs:
|
||||||
- run: cargo add serde_as
|
- run: cargo add serde_as
|
||||||
|
|
||||||
- run: cargo clippy
|
- run: cargo clippy
|
||||||
|
|
||||||
|
cache:
|
||||||
|
name: Cache
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- id: toolchain
|
||||||
|
name: Install Rust
|
||||||
|
uses: ./
|
||||||
|
with:
|
||||||
|
components: clippy
|
||||||
|
cache: true
|
||||||
|
cache-workspaces: |-
|
||||||
|
./test-workspace
|
||||||
|
|
||||||
|
- run: cargo clippy --manifest-path=./test-workspace/Cargo.toml
|
||||||
|
|
|
@ -49,11 +49,12 @@ First, all items specified in the toolchain file are installed.
|
||||||
Afterward, the `components` and `target` specified via inputs are installed in addition to the items from the toolchain file.
|
Afterward, the `components` and `target` specified via inputs are installed in addition to the items from the toolchain file.
|
||||||
|
|
||||||
| Name | Description | Default |
|
| Name | Description | Default |
|
||||||
| ------------ | -------------------------------------------------------------------------------------- | ------------- |
|
|--------------------|----------------------------------------------------------------------------------------|---------------|
|
||||||
| `toolchain` | Rustup toolchain specifier e.g. `stable`, `nightly`, `1.42.0`. | stable |
|
| `toolchain` | Rustup toolchain specifier e.g. `stable`, `nightly`, `1.42.0`. | stable |
|
||||||
| `target` | Additional target support to install e.g. `wasm32-unknown-unknown` | |
|
| `target` | Additional target support to install e.g. `wasm32-unknown-unknown` | |
|
||||||
| `components` | Comma-separated string of additional components to install e.g. `clippy, rustfmt` | |
|
| `components` | Comma-separated string of additional components to install e.g. `clippy, rustfmt` | |
|
||||||
| `cache` | Automatically configure Rust cache (using `Swatinem/rust-cache`) | true |
|
| `cache` | Automatically configure Rust cache (using `Swatinem/rust-cache`) | true |
|
||||||
|
| `cache-workspaces` | Propagates the value to `Swatinem/rust-cache` | |
|
||||||
| `matcher` | Enable problem matcher to surface build messages and formatting issues | true |
|
| `matcher` | Enable problem matcher to surface build messages and formatting issues | true |
|
||||||
| `rustflags` | Set the value of `RUSTFLAGS` (set to empty string to avoid overwriting existing flags) | "-D warnings" |
|
| `rustflags` | Set the value of `RUSTFLAGS` (set to empty string to avoid overwriting existing flags) | "-D warnings" |
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,9 @@ inputs:
|
||||||
description: "Automatically configure Rust cache"
|
description: "Automatically configure Rust cache"
|
||||||
required: false
|
required: false
|
||||||
default: "true"
|
default: "true"
|
||||||
|
cache-workspaces:
|
||||||
|
description: "Paths to multiple Cargo workspaces and their target directories, separated by newlines."
|
||||||
|
required: false
|
||||||
matcher:
|
matcher:
|
||||||
description: "Enable the Rust problem matcher"
|
description: "Enable the Rust problem matcher"
|
||||||
required: false
|
required: false
|
||||||
|
@ -171,3 +174,5 @@ runs:
|
||||||
- name: Setup Rust Caching
|
- name: Setup Rust Caching
|
||||||
if: inputs.cache == 'true'
|
if: inputs.cache == 'true'
|
||||||
uses: Swatinem/rust-cache@v2
|
uses: Swatinem/rust-cache@v2
|
||||||
|
with:
|
||||||
|
workspaces: ${{inputs.cache-workspaces}}
|
||||||
|
|
16
test-workspace/Cargo.lock
generated
Normal file
16
test-workspace/Cargo.lock
generated
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
# This file is automatically @generated by Cargo.
|
||||||
|
# It is not intended for manual editing.
|
||||||
|
version = 3
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "ci"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"serde_as",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "serde_as"
|
||||||
|
version = "0.0.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4ee4afe4c5c3b69699c4267ae42b838e911466d7ca0005046adc93ac95bb16dd"
|
9
test-workspace/Cargo.toml
Normal file
9
test-workspace/Cargo.toml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
[package]
|
||||||
|
name = "ci"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
serde_as = "0.0.1"
|
3
test-workspace/src/main.rs
Normal file
3
test-workspace/src/main.rs
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
fn main() {
|
||||||
|
println!("Hello, world!");
|
||||||
|
}
|
Loading…
Reference in a new issue