Daily Next.js integration test with turbopack #646
This file contains 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
# A workflow to run next.js integration test with turbopack for each day. | |
# This runs against main branch with latest Next.js release. | |
name: Daily Next.js integration test with turbopack | |
on: | |
schedule: | |
- cron: "0 8 * * *" | |
workflow_dispatch: | |
inputs: | |
version: | |
description: Next.js version, sha, branch to test | |
type: string | |
default: "canary" | |
post_to_slack: | |
description: Post test results to Slack | |
type: boolean | |
default: false | |
jobs: | |
# Trigger actual next.js integration tests. | |
next_js_integration: | |
name: Execute Next.js integration workflow | |
permissions: | |
pull-requests: write | |
uses: ./.github/workflows/nextjs-integration-test.yml | |
with: | |
diff_base: "none" | |
version: ${{ inputs.version }} | |
skip_post_to_slack: ${{ inputs.post_to_slack != true }} | |
# Upload test results to branch. | |
upload_test_results: | |
name: Upload test results | |
needs: [next_js_integration] | |
if: ${{ github.event_name == 'schedule' }} | |
uses: ./.github/workflows/upload-nextjs-integration-test-results.yml | |
with: | |
is_main_branch: true | |
post_to_slack: | |
needs: [next_js_integration] | |
name: Post results to Slack | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download summary.md artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: test-results | |
- name: Check if summary file was generated | |
id: summary_check | |
run: | | |
if stat slack-payload.json; then | |
echo "should_continue=true" >> $GITHUB_OUTPUT | |
else | |
echo "should_continue=false" >> $GITHUB_OUTPUT | |
fi | |
- name: Send test data to Slack workflow | |
if: steps.summary_check.outputs.should_continue == 'true' | |
uses: slackapi/slack-github-action@v1.23.0 | |
with: | |
payload-file-path: "./slack-payload.json" | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.NEXT_TURBO_INTEGRATION_SLACK_WEBHOOK_URL }} |