perf: add comprehensive caching to production workflow

This commit is contained in:
Graham McIntire 2026-03-07 13:21:47 -06:00
parent 1b606534c5
commit d1591d3e6c
No known key found for this signature in database

View file

@ -38,6 +38,13 @@ jobs:
elixir-version: '1.18.1'
otp-version: '27.2'
- name: Cache Mix
uses: https://github.com/actions/cache@v4
with:
path: ~/.mix
key: ${{ runner.os }}-mix-1.18.1-27.2
restore-keys: ${{ runner.os }}-mix-
- name: Cache deps
uses: https://github.com/actions/cache@v4
with:
@ -108,6 +115,13 @@ jobs:
with:
node-version: '20'
- name: Cache Mix
uses: https://github.com/actions/cache@v4
with:
path: ~/.mix
key: ${{ runner.os }}-mix-1.18.1-27.2
restore-keys: ${{ runner.os }}-mix-
- name: Cache deps
uses: https://github.com/actions/cache@v4
with:
@ -122,6 +136,20 @@ jobs:
key: ${{ runner.os }}-build-${{ hashFiles('lib/**/*.ex') }}-${{ hashFiles('mix.lock') }}
restore-keys: ${{ runner.os }}-build-
- name: Cache npm
uses: https://github.com/actions/cache@v4
with:
path: e2e/node_modules
key: ${{ runner.os }}-npm-${{ hashFiles('e2e/package-lock.json') }}
restore-keys: ${{ runner.os }}-npm-
- name: Cache Playwright browsers
uses: https://github.com/actions/cache@v4
with:
path: ~/.cache/ms-playwright
key: ${{ runner.os }}-playwright-${{ hashFiles('e2e/package-lock.json') }}
restore-keys: ${{ runner.os }}-playwright-
- name: Install system dependencies
run: |
sudo apt-get update