name: 'Setup Rust and Cargo'
author: 'Miles Johnson'
description:
  'Sets up Rust by installing a toolchain/components/targets with rustup, and also Cargo by
  installing bins and caching core.'
inputs:
  bins:
    description: 'Comma-separated list of global binaries to install into Cargo.'
  cache:
    description: 'Toggle caching of ~/.cargo/registry and /target/<cache-target> directories.'
    default: true
  cache-base:
    description:
      'Base branch/ref to save a warmup cache on. Other branches/refs will restore from this base.'
  cache-target:
    description: 'Name of the target profile to cache.'
    default: 'debug'
  channel:
    description: 'Toolchain specification/channel to explicitly install.'
  components:
    description: 'Comma-separated list of additional components to install.'
  inherit-toolchain:
    description: 'Inherit all toolchain settings from the rust-toolchain.toml file.'
    default: false
  targets:
    description: 'Comma-separated list of additional targets to install.'
  profile:
    description: 'Profile to install. Defaults to "minimal".'
outputs:
  cache-key:
    description: 'The generated cache key used.'
  cache-hit:
    description: 'Indicates an exact match was found for the cache key.'
  rust-version:
    description: 'Version of the installed rustc.'
  rust-hash:
    description: 'Commit hash of the installed rustc.'
runs:
  using: 'node20'
  main: 'dist/index.js'
  post: 'dist/post/index.js'
branding:
  icon: 'settings'
  color: 'orange'
