Skip to content

Commit 41399de

Browse files
author
Dan Costello
committed
Update nextjs action
1 parent 32bbbde commit 41399de

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

.github/workflows/nextjs.yml

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,11 @@ jobs:
3434
- name: Detect package manager
3535
id: detect-package-manager
3636
run: |
37-
if [ -f "${{ github.workspace }}/yarn.lock" ]; then
38-
echo "manager=yarn" >> $GITHUB_OUTPUT
37+
if [ -f "${{ github.workspace }}/docs/pnpm-lock.yaml" ]; then
38+
echo "manager=pnpm" >> $GITHUB_OUTPUT
3939
echo "command=install" >> $GITHUB_OUTPUT
40-
echo "runner=yarn" >> $GITHUB_OUTPUT
41-
exit 0
42-
elif [ -f "${{ github.workspace }}/package.json" ]; then
43-
echo "manager=npm" >> $GITHUB_OUTPUT
44-
echo "command=ci" >> $GITHUB_OUTPUT
45-
echo "runner=npx --no-install" >> $GITHUB_OUTPUT
40+
echo "runner=pnpm" >> $GITHUB_OUTPUT
41+
echo "working-directory=docs" >> $GITHUB_OUTPUT
4642
exit 0
4743
else
4844
echo "Unable to determine package manager"
@@ -53,6 +49,12 @@ jobs:
5349
with:
5450
node-version: "20"
5551
cache: ${{ steps.detect-package-manager.outputs.manager }}
52+
- name: Install pnpm
53+
if: ${{ steps.detect-package-manager.outputs.manager == 'pnpm' }}
54+
uses: pnpm/action-setup@v2
55+
with:
56+
version: 8
57+
run_install: false
5658
- name: Setup Pages
5759
uses: actions/configure-pages@v5
5860
with:
@@ -65,20 +67,22 @@ jobs:
6567
uses: actions/cache@v4
6668
with:
6769
path: |
68-
.next/cache
70+
docs/.next/cache
6971
# Generate a new cache whenever packages or source files change.
70-
key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }}
72+
key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock', '**/pnpm-lock.yaml') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }}
7173
# If source files changed but packages didn't, rebuild from a prior cache.
7274
restore-keys: |
73-
${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-
75+
${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock', '**/pnpm-lock.yaml') }}-
7476
- name: Install dependencies
7577
run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }}
78+
working-directory: ${{ steps.detect-package-manager.outputs.working-directory }}
7679
- name: Build with Next.js
7780
run: ${{ steps.detect-package-manager.outputs.runner }} next build
81+
working-directory: ${{ steps.detect-package-manager.outputs.working-directory }}
7882
- name: Upload artifact
7983
uses: actions/upload-pages-artifact@v3
8084
with:
81-
path: ./out
85+
path: ./docs/out
8286

8387
# Deployment job
8488
deploy:

0 commit comments

Comments
 (0)