name: Test on: [push, pull_request] jobs: test: runs-on: ubuntu-latest strategy: matrix: node-version: ['10', '12', '13'] steps: - uses: actions/checkout@v1 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - name: Cache node modules uses: actions/cache@v1 with: path: ~/.npm key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: ${{ runner.os }}-node- - name: Cache Gatsby build output uses: actions/cache@v1 with: path: public key: ${{ runner.os }}-public - run: npm ci - run: npm test - run: npm run build env: CI: true GATSBY_GITHUB_TOKEN: ${{ secrets.GATSBY_GITHUB_TOKEN }}