chore: bump version to 3.0.10 and fix init issue for pnpm #1166
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
| name: Next.js Latest | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| schedule: | |
| - cron: '0 0 * * *' # Run daily at midnight UTC | |
| jobs: | |
| check-automation: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| should-skip: ${{ steps.check-automation.outputs.should-skip }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Check if triggered by automation | |
| id: check-automation | |
| run: | | |
| # Skip automation check for scheduled runs | |
| if [[ "${{ github.event_name }}" == "schedule" ]]; then | |
| echo "should-skip=false" >> $GITHUB_OUTPUT | |
| echo "✅ Scheduled run - workflow will proceed" | |
| exit 0 | |
| fi | |
| # Skip if actor is github-actions or dependabot | |
| if [[ "${{ github.actor }}" == "github-actions[bot]" ]] || [[ "${{ github.actor }}" == "dependabot[bot]" ]] || [[ "${{ github.actor }}" == "github-actions" ]]; then | |
| echo "should-skip=true" >> $GITHUB_OUTPUT | |
| echo "🚫 Skipping workflow: triggered by automated actor (${{ github.actor }})" | |
| exit 0 | |
| fi | |
| # Get the latest commit message and author | |
| COMMIT_MESSAGE=$(git log -1 --pretty=%B) | |
| COMMIT_AUTHOR=$(git log -1 --pretty=%an) | |
| echo "Commit message: $COMMIT_MESSAGE" | |
| echo "Commit author: $COMMIT_AUTHOR" | |
| # Skip if commit message contains [skip ci] or [ci skip] | |
| if echo "$COMMIT_MESSAGE" | grep -q "\[skip ci\]"; then | |
| echo "should-skip=true" >> $GITHUB_OUTPUT | |
| echo "🚫 Skipping workflow: [skip ci] found in commit message" | |
| exit 0 | |
| fi | |
| if echo "$COMMIT_MESSAGE" | grep -q "\[ci skip\]"; then | |
| echo "should-skip=true" >> $GITHUB_OUTPUT | |
| echo "🚫 Skipping workflow: [ci skip] found in commit message" | |
| exit 0 | |
| fi | |
| # Skip if commit author is automated | |
| if [[ "$COMMIT_AUTHOR" == *"github-actions"* ]] || [[ "$COMMIT_AUTHOR" == *"GitHub Action"* ]] || [[ "$COMMIT_AUTHOR" == *"dependabot"* ]]; then | |
| echo "should-skip=true" >> $GITHUB_OUTPUT | |
| echo "🚫 Skipping workflow: commit by automated author ($COMMIT_AUTHOR)" | |
| exit 0 | |
| fi | |
| echo "should-skip=false" >> $GITHUB_OUTPUT | |
| echo "✅ Workflow will proceed" | |
| check-next-version: | |
| needs: check-automation | |
| if: needs.check-automation.outputs.should-skip != 'true' | |
| runs-on: ubuntu-latest | |
| outputs: | |
| should_run: ${{ steps.check.outputs.should_run }} | |
| latest_version: ${{ steps.check.outputs.latest_version }} | |
| steps: | |
| - id: check | |
| run: | | |
| LATEST=$(npm view next version) | |
| CURRENT=$(cat .next-version 2>/dev/null || echo "") | |
| echo "Latest version: $LATEST" | |
| echo "Current version: $CURRENT" | |
| if [ "$LATEST" != "$CURRENT" ]; then | |
| echo "should_run=true" >> $GITHUB_OUTPUT | |
| echo "latest_version=$LATEST" >> $GITHUB_OUTPUT | |
| echo $LATEST > .next-version | |
| else | |
| echo "should_run=false" >> $GITHUB_OUTPUT | |
| fi | |
| test-next-latest: | |
| needs: [check-automation, check-next-version] | |
| if: ${{ needs.check-automation.outputs.should-skip != 'true' && (needs.check-next-version.outputs.should_run == 'true' || github.event_name == 'push' || github.event_name == 'pull_request') }} | |
| runs-on: ubuntu-latest | |
| name: Next.js latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Use Node.js | |
| uses: actions/setup-node@v3 | |
| with: | |
| node-version: '18' | |
| - name: Print Environment Info | |
| run: | | |
| node -v | |
| npm -v | |
| cat .next-version || echo ".next-version file not found" | |
| - name: Set Git identity | |
| run: | | |
| git config --global user.name "github-actions[bot]" | |
| git config --global user.email "github-actions[bot]@users.noreply.github.com" | |
| - name: Create Next.js project from create-command | |
| run: | | |
| npx create-gluestack@latest test-app --starter-kit-next | |
| cd test-app | |
| - name: Build Next.js app | |
| working-directory: test-app | |
| env: | |
| NEXT_TELEMETRY_DISABLED: 1 | |
| run: | | |
| npm run build | |
| - name: Start Next.js app | |
| working-directory: test-app | |
| run: | | |
| npm run start & | |
| sleep 20 | |
| - name: Fetch and Log Server Response | |
| run: | | |
| curl -s http://localhost:3000 || echo "Failed to reach the server" | |
| curl -s http://localhost:3000 > server_response.html | |
| cat server_response.html | |
| - name: Check if text is rendered | |
| run: | | |
| RESPONSE=$(curl -s http://localhost:3000) | |
| echo "$RESPONSE" | grep -q "Get started by editing" && echo "text found" || (echo "text not found" && exit 1) |