Mirror: The small sibling of the graphql package, slimmed down for client-side libraries.
1name: CI 2 3on: 4 pull_request: 5 push: 6 branches: main 7 8jobs: 9 check: 10 name: Checks 11 runs-on: ubuntu-latest 12 timeout-minutes: 10 13 steps: 14 - name: Checkout Repo 15 uses: actions/checkout@v2 16 with: 17 fetch-depth: 0 18 - name: Setup Node 19 uses: actions/setup-node@v1 20 with: 21 node-version: '14' 22 - name: Get Yarn cache directory 23 id: yarn-cache-dir-path 24 run: echo "::set-output name=dir::$(yarn cache dir)" 25 - name: Use Yarn cache 26 uses: actions/cache@v2 27 id: yarn-cache 28 with: 29 path: ${{ steps.yarn-cache-dir-path.outputs.dir }} 30 key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} 31 restore-keys: | 32 ${{ runner.os }}-yarn- 33 - name: Use node_modules cache 34 id: node-modules-cache 35 uses: actions/cache@v2 36 with: 37 path: node_modules 38 key: ${{ runner.os }}-node-modules-${{ hashFiles('**/yarn.lock') }} 39 - name: Install Dependencies 40 if: | 41 steps.yarn-cache.outputs.cache-hit != 'true' || 42 steps.node-modules-cache.outputs.cache-hit != 'true' 43 run: yarn install --prefer-offline --frozen-lockfile --non-interactive --silent 44 - name: Linting 45 run: yarn run lint 46 - name: Unit Tests 47 run: yarn run test --maxWorkers=2 48 - name: Build 49 run: yarn run build