feat(flags): add node support for generic featureFlagsIntegration and move utils to core #2205
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: 'CI: Detect flaky tests' | |
on: | |
workflow_dispatch: | |
pull_request: | |
paths: | |
- 'dev-packages/browser-integration-tests/suites/**/test.ts' | |
branches-ignore: | |
- master | |
env: | |
HEAD_COMMIT: ${{ github.event.inputs.commit || github.sha }} | |
NX_CACHE_RESTORE_KEYS: | | |
nx-Linux-${{ github.ref }}-${{ github.event.inputs.commit || github.sha }} | |
nx-Linux-${{ github.ref }} | |
nx-Linux | |
# Cancel in progress workflows on pull_requests. | |
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
flaky-detector: | |
runs-on: ubuntu-24.04 | |
timeout-minutes: 60 | |
name: 'Check tests for flakiness' | |
# Also skip if PR is from master -> develop | |
if: ${{ github.base_ref != 'master' && github.ref != 'refs/heads/master' }} | |
steps: | |
- name: Check out current branch | |
uses: actions/checkout@v4 | |
- name: Set up Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: 'package.json' | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn install --ignore-engines --frozen-lockfile | |
- name: NX cache | |
uses: actions/cache/restore@v4 | |
with: | |
path: .nxcache | |
key: nx-Linux-${{ github.ref }}-${{ env.HEAD_COMMIT }} | |
restore-keys: ${{ env.NX_CACHE_RESTORE_KEYS }} | |
- name: Build packages | |
run: yarn build | |
- name: Install Playwright | |
uses: ./.github/actions/install-playwright | |
with: | |
browsers: 'chromium' | |
- name: Determine changed tests | |
uses: dorny/[email protected] | |
id: changed | |
with: | |
list-files: json | |
filters: | | |
browser_integration: dev-packages/browser-integration-tests/suites/**/test.ts | |
- name: Detect flaky tests | |
id: test | |
run: yarn test:detect-flaky | |
working-directory: dev-packages/browser-integration-tests | |
env: | |
CHANGED_TEST_PATHS: ${{ steps.changed.outputs.browser_integration_files }} | |
TEST_RUN_COUNT: 'AUTO' | |
- name: Upload Playwright Traces | |
uses: actions/upload-artifact@v4 | |
if: failure() && steps.test.outcome == 'failure' | |
with: | |
name: playwright-test-results | |
path: dev-packages/browser-integration-tests/test-results | |
retention-days: 5 |