diff options
Diffstat (limited to '.github/actions')
-rw-r--r-- | .github/actions/setup/action.yml | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml new file mode 100644 index 0000000..c2d9be5 --- /dev/null +++ b/.github/actions/setup/action.yml @@ -0,0 +1,35 @@ +name: Setup Rust Environment + +inputs: + key: + description: Cache key + required: true + toolchain: + description: Pass-through to toolchain on actions-rs + default: stable + required: false + components: + description: Pass-through to components on actions-rs + required: false + +runs: + using: composite + steps: + - uses: actions-rs/toolchain@v1 + id: toolchain-install + with: + profile: minimal + override: true + toolchain: ${{ inputs.toolchain }} + components: ${{ inputs.components }} + - uses: actions/cache@v3 + with: + path: | + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ${{ inputs.key }}-${{ runner.os }}-${{ inputs.toolchain }}-${{ steps.toolchain-install.outputs.rustc_hash }}-${{ hashFiles('**/Cargo.lock', '**/Cargo.toml') }} + restore-keys: | + ${{ inputs.key }}-${{ runner.os }}-${{ inputs.toolchain }}-${{ steps.toolchain-install.outputs.rustc_hash }}- + ${{ inputs.key }}-${{ runner.os }}-${{ inputs.toolchain }}- |