name: 'Setup Rust Environment'
description: 'Sets up Rust toolchain with caching'
inputs:
toolchain:
description: 'Rust toolchain version'
required: false
default: 'stable'
components:
description: 'Rust components to install (comma-separated)'
required: false
default: 'clippy,rustfmt'
cache-key:
description: 'Additional cache key'
required: false
default: ''
runs:
using: 'composite'
steps:
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ inputs.toolchain }}
components: ${{ inputs.components }}
- name: Cache Cargo dependencies
uses: swatinem/rust-cache@v2
with:
key: ${{ inputs.cache-key }}