fix: swap bun install for npm ci to fix integrity check failures

Known Bun bug (oven-sh/bun#1590, #26879, #18864) causes
IntegrityCheckFailed during tarball extraction in Docker/CI.
This is a 3+ year old issue with no fix in sight.

Changes:
- Generate package-lock.json via npm install --package-lock-only
- Dockerfile: add nodejs npm to all stages, replace bun install
  with npm ci --legacy-peer-deps (peer dep conflict exists for
  eslint@8 with eslint-config-next@16)
- Keep bun as runtime (bun test, bun run build, bun run start)
- pr.yml: npm ci, npx prisma generate, npx playwright
- release.yml: node scripts, npm test
- build-ci-images.yml: add package-lock.json trigger path
This commit is contained in:
2026-05-17 03:05:57 -07:00
parent baeab0fbe5
commit 4a09bd044a
5 changed files with 10495 additions and 20 deletions
+6 -6
View File
@@ -23,13 +23,13 @@ jobs:
uses: actions/checkout@v4
- name: Install dependencies
run: bun install --retry 3
run: npm ci --legacy-peer-deps
- name: Generate Prisma client
run: bun x prisma generate
run: npx prisma generate
- name: Run unit tests
run: bun test src/__tests__/unit/ src/__tests__/*.test.tsx src/__tests__/auth-simple.test.ts
run: npm test
build-and-deploy-ci:
runs-on: ubuntu-latest
@@ -45,10 +45,10 @@ jobs:
uses: actions/checkout@v4
- name: Install dependencies
run: bun install --retry 3
run: npm ci --legacy-peer-deps
- name: Generate Prisma client
run: bun x prisma generate
run: npx prisma generate
env:
DATABASE_URL: postgresql://user:pass@localhost:5432/dummy
@@ -93,7 +93,7 @@ jobs:
exit 1
- name: Run acceptance tests
run: DATABASE_URL="${{ secrets.CI_DATABASE_URL }}" bun test:acceptance
run: DATABASE_URL="${{ secrets.CI_DATABASE_URL }}" npx playwright test e2e/
env:
CI: true