Skip to content

updated the version on pages upload artifact#61

Merged
rohitmalhotra1420 merged 1 commit intomainfrom
analytics-dashboard-59-analytics-v2-base-added
Feb 12, 2025
Merged

updated the version on pages upload artifact#61
rohitmalhotra1420 merged 1 commit intomainfrom
analytics-dashboard-59-analytics-v2-base-added

Conversation

@rohitmalhotra1420
Copy link
Copy Markdown
Contributor

No description provided.

@rohitmalhotra1420 rohitmalhotra1420 self-assigned this Feb 12, 2025
@rohitmalhotra1420 rohitmalhotra1420 merged commit e726123 into main Feb 12, 2025
1 check passed
@github-actions
Copy link
Copy Markdown

  • In the permissions, I see a typo. It should be id-token instead of id-token.

  • In the concurrency section, the comment mentions about not cancelling in-progress runs, but the actual setting for cancel-in-progress is set to false, which contradicts the comment. It should be true if you want to allow only one concurrent deployment.

  • In the build job:

    • The output variable used in the detect-package-manager step is called $GITHUB_OUTPUT, but it's not defined or created anywhere in the workflow. It seems like it's intended to be GITHUB_OUTPUT, without the $.
    • In the Restore cache step, the indentation for keys should be aligned with the path.
  • The deploy job is referencing steps.deployment.outputs.page_url, but there is no step in the workflow that defines an output with the key page_url. It seems like there is missing configuration for defining the page_url output.

Other than these issues, the workflow looks pretty good.

Code Review:

name: Deploy Next.js site to Pages

on:
  push:
    branches:
      - main
  workflow_dispatch:

permissions:
  contents: read
  pages: write
  id-token: write

concurrency:
  group: 'pages'
  cancel-in-progress: true

jobs:
  build:
    runs-on: ubuntu-latest
    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: Setup Node
        uses: actions/setup-node@v3
        with:
          node-version: '16'
          cache: ${{ steps.detect-package-manager.outputs.manager }}
      - name: Setup Pages
        uses: actions/configure-pages@v3
        with:
          static_site_generator: next
      - name: Restore cache
        uses: actions/cache@v3
        with:
          path: .next/cache
          key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json', '**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }}
          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 }}
      - 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
      - name: Upload artifact
        uses: actions/upload-artifact@v2
        with:
          path: ./out

  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    needs: build
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v2

All looks good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant