resolving clerk build error #4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # CI/CD: run on every push to main. Ensures lint and build pass. | |
| # Deploy: connect this repo in Vercel and set Production Branch = main for auto-deploy. | |
| name: CI/CD | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| NODE_VERSION: "20" | |
| jobs: | |
| ci: | |
| name: Lint & Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: "npm" | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Generate Prisma Client | |
| env: | |
| # Prisma generate only needs DATABASE_URL to be set (not used at generate time) | |
| DATABASE_URL: "postgresql://placeholder:placeholder@localhost:5432/placeholder" | |
| DIRECT_URL: "postgresql://placeholder:placeholder@localhost:5432/placeholder" | |
| run: npx prisma generate | |
| - name: Lint | |
| run: npm run lint | |
| - name: Build | |
| env: | |
| DATABASE_URL: ${{ secrets.DATABASE_URL || 'postgresql://placeholder:placeholder@localhost:5432/placeholder' }} | |
| DIRECT_URL: ${{ secrets.DIRECT_URL || 'postgresql://placeholder:placeholder@localhost:5432/placeholder' }} | |
| # Placeholder Clerk key is OK: app skips Clerk when key is pk_test_placeholder so prerender succeeds | |
| NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY: ${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY || 'pk_test_placeholder' }} | |
| CLERK_SECRET_KEY: ${{ secrets.CLERK_SECRET_KEY || 'sk_test_placeholder' }} | |
| NEXT_PUBLIC_APP_URL: ${{ secrets.NEXT_PUBLIC_APP_URL || 'https://developers-doc-1.vercel.app' }} | |
| run: npx next build --webpack |