name: Rustup description: Install Rust with minimal profile and additional components inputs: # See https://rust-lang.github.io/rustup/concepts/components.html clippy: default: false required: false type: boolean fmt: default: false required: false type: boolean docs: default: false required: false type: boolean runs: using: composite steps: - name: Remove `profile` line on MacOS shell: bash if: runner.os == 'macOS' run: sed -i '' '/profile/d' rust-toolchain.toml - name: Remove `profile` line on non-MacOS shell: bash if: runner.os != 'macOS' run: sed -i '/profile/d' rust-toolchain.toml - name: Set minimal shell: bash run: rustup set profile minimal - name: Add Clippy shell: bash if: ${{ inputs.clippy == 'true' }} run: rustup component add clippy - name: Add Rustfmt shell: bash if: ${{ inputs.fmt == 'true' }} run: rustup component add rustfmt - name: Add docs shell: bash if: ${{ inputs.docs == 'true' }} run: rustup component add rust-docs - name: Install shell: bash run: rustup show