name: Setup

runs:
  using: composite
  steps:
    - name: Install node
      uses: actions/setup-node@v3
      with:
        node-version: 18.16.0
    - name: Cache
      uses: actions/cache@v3
      id: cache
      with:
        path: '**/node_modules'
        key: yarn-v1-${{ runner.os }}-${{ hashFiles('.nvmrc') }}-${{ hashFiles('**/yarn.lock') }}
    - name: Install
      run: yarn --immutable
      shell: bash
      if: steps.cache.outputs.cache-hit != 'true'