Skip to content

Commit

Permalink
canary test adjustments (#12233)
Browse files Browse the repository at this point in the history
* run on multiple branches, log installed versions, adjust test command

* add `|| true`

* different react version logging

* allow inputs on dispatch

* wording
  • Loading branch information
phryneas authored Dec 18, 2024
1 parent aa1ee9f commit 2fb7d7a
Showing 1 changed file with 19 additions and 6 deletions.
25 changes: 19 additions & 6 deletions .github/workflows/scheduled-test-canary.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,38 @@
# a GitHub Action that once a day runs all tests from `main` and `release-*` branches
# with the latest `canary` and `experimental` release of `react` and `react-dom`

name: Scheduled React Canary Test
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
inputs:
branches:
description: "Branches to test"
required: true
default: '["main", "release-3.13", "release-4.0"]'
tags:
description: "React and React-DOM versions"
required: true
default: '["canary", "experimental"]'
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
tag:
- canary
- experimental
tag: ${{ fromJson(github.event_name == 'workflow_dispatch' && inputs.tags || '["canary", "experimental"]') }}
branch: ${{ fromJson(github.event_name == 'workflow_dispatch' && inputs.branches || '["main", "release-3.13", "release-4.0"]') }}
steps:
- uses: actions/checkout@v4
with:
ref: ${{ matrix.branch }}
- uses: actions/setup-node@v4
with:
node-version: 22.x
- uses: bahmutov/npm-install@v1
- run: npm install react@${{ matrix.tag }} react-dom@${{ matrix.tag }}
- run: |
npm install react@${{ matrix.tag }} react-dom@${{ matrix.tag }}
# tests can be flaky, this runs only once a day and we want to minimize false negatives - retry up to three times
- run: "parallel --line-buffer -j 1 --retries 3 'npm run test:ci -- --selectProjects ' ::: 'ReactDOM 19'"
- run: |
node -e 'console.log("\n\nReact %s, React-DOM %s\n\n", require("react").version, require("react-dom").version)'
parallel --line-buffer -j 1 --retries 3 'npm test -- --logHeapUsage --selectProjects ' ::: 'ReactDOM 19'

0 comments on commit 2fb7d7a

Please sign in to comment.