name: sccache
description: |
  Install sccache for caching builds in GitHub Actions.

inputs:
  token:
    description: 'A Github PAT'
    required: false

runs:
  using: composite
  steps:
  - name: Install sccache
    uses: https://github.com/mozilla-actions/sccache-action@v0.0.9
    with:
      token: ${{ inputs.token }}
  - name: Configure sccache
    uses: https://github.com/actions/github-script@v7
    with:
      script: |
        core.exportVariable('ACTIONS_RESULTS_URL', process.env.ACTIONS_RESULTS_URL || '');
        core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
  - shell: bash
    run: |
      echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
      echo "RUSTC_WRAPPER=sccache" >> $GITHUB_ENV
      echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
      echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
      echo "CMAKE_CUDA_COMPILER_LAUNCHER=sccache" >> $GITHUB_ENV
