From 9b72a68fd0a2eac758bf7d772e3bfa3fc9f1b806 Mon Sep 17 00:00:00 2001 From: Martin Palma Date: Fri, 1 Dec 2023 10:20:14 +0100 Subject: [PATCH] ci: use pnpm --- .github/workflows/nextjs.yml | 72 ++++++++++++++++-------------------- .gitignore | 1 - 2 files changed, 32 insertions(+), 41 deletions(-) diff --git a/.github/workflows/nextjs.yml b/.github/workflows/nextjs.yml index d759566..b0bf83a 100644 --- a/.github/workflows/nextjs.yml +++ b/.github/workflows/nextjs.yml @@ -31,52 +31,44 @@ jobs: steps: - name: Checkout uses: actions/checkout@v3 - - name: Detect package manager - id: detect-package-manager - run: | - if [ -f "${{ github.workspace }}/yarn.lock" ]; then - echo "manager=yarn" >> $GITHUB_OUTPUT - echo "command=install" >> $GITHUB_OUTPUT - echo "runner=yarn" >> $GITHUB_OUTPUT - exit 0 - elif [ -f "${{ github.workspace }}/package.json" ]; then - echo "manager=npm" >> $GITHUB_OUTPUT - echo "command=ci" >> $GITHUB_OUTPUT - echo "runner=npx --no-install" >> $GITHUB_OUTPUT - exit 0 - else - echo "Unable to determine package manager" - exit 1 - fi + + - name: pnpm-setup + uses: pnpm/action-setup@v2 + with: + version: 8 + - name: Setup Node uses: actions/setup-node@v3 with: node-version: "18" - cache: ${{ steps.detect-package-manager.outputs.manager }} - - name: Setup Pages - uses: actions/configure-pages@v3 - with: - # Automatically inject basePath in your Next.js configuration file and disable - # server side image optimization (https://nextjs.org/docs/api-reference/next/image#unoptimized). - # - # You may remove this line if you want to manage the configuration yourself. - static_site_generator: next - - name: Restore cache - uses: actions/cache@v3 - with: - path: | - .next/cache - # Generate a new cache whenever packages or source files change. - key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }} - # If source files changed but packages didn't, rebuild from a prior cache. - restore-keys: | - ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}- + + # - name: Setup Pages + # uses: actions/configure-pages@v3 + # with: + # # Automatically inject basePath in your Next.js configuration file and disable + # # server side image optimization (https://nextjs.org/docs/api-reference/next/image#unoptimized). + # # + # # You may remove this line if you want to manage the configuration yourself. + # static_site_generator: next + # - name: Restore cache + # uses: actions/cache@v3 + # with: + # path: | + # .next/cache + # # Generate a new cache whenever packages or source files change. + # key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }} + # # If source files changed but packages didn't, rebuild from a prior cache. + # restore-keys: | + # ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}- - name: Install dependencies - run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} + run: pnpm install + - name: Build with Next.js - run: ${{ steps.detect-package-manager.outputs.runner }} next build - - name: Static HTML export with Next.js - run: ${{ steps.detect-package-manager.outputs.runner }} next export + run: pnpm build + + - name: show directory + run: ls -la + - name: Upload artifact uses: actions/upload-pages-artifact@v2 with: diff --git a/.gitignore b/.gitignore index b994075..6ef0354 100644 --- a/.gitignore +++ b/.gitignore @@ -8,7 +8,6 @@ # next.js /.next/ -/out/ # production /build