From 40cc7f4d1687c88a692fb70f7a2e9159c6714d3a Mon Sep 17 00:00:00 2001
From: Stuart Knightley <git@website.stuartk.com>
Date: Mon, 11 Oct 2021 12:05:13 -0700
Subject: [PATCH] Add dependency caching

---
 .github/workflows/pr.yaml | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index 06023f8f..cc00bbeb 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -9,11 +9,29 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v2
+
       - uses: actions/setup-node@v2
         with:
           node-version: 'lts/*'
           cache: 'npm'
-      - run: npm install
+
+      - name: Cache Node modules
+        uses: actions/cache@v2
+        env:
+          cache-name: cache-node-modules
+        with:
+          # npm cache files are stored in `~/.npm` on Linux/macOS
+          path: ~/.npm
+          key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
+          restore-keys: |
+            ${{ runner.os }}-build-${{ env.cache-name }}-
+            ${{ runner.os }}-build-
+            ${{ runner.os }}-
+
+      - name: "Install dependencies"
+        run: |
+          npm install
+          sudo npx playwright install-deps
 
       - name: Lint
         run: npm run lint
@@ -21,5 +39,4 @@ jobs:
         run: npm run test-node
       - name: Test browsers
         run: |
-          sudo npx playwright install-deps
           npm run test-browser