From 88ac0937515fb054b7e51e3b2f8c3b65f8af7162 Mon Sep 17 00:00:00 2001 From: Harshit Shah Date: Fri, 21 Aug 2026 11:03:57 +0530 Subject: [PATCH] fix(ci): restore Playwright shard distribution on 1.13 --- .../workflows/playwright-postgresql-e2e.yml | 43 +++++++++++++++++-- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/.github/workflows/playwright-postgresql-e2e.yml b/.github/workflows/playwright-postgresql-e2e.yml index 3abbaa4e8e6f..dbc29f1f2213 100644 --- a/.github/workflows/playwright-postgresql-e2e.yml +++ b/.github/workflows/playwright-postgresql-e2e.yml @@ -189,7 +189,7 @@ jobs: --project=DataAssetRulesDisabled \ --project=Basic \ --project="Data Insight" \ - --project=SearchRBAC \ + --project=SearchRBAC else # Shards 2-6 run common chromium tests equally distributed (5-way sharding) @@ -197,8 +197,6 @@ jobs: echo "🔹 Running common chromium tests on shard ${CHROMIUM_SHARD}/5" npx playwright test \ --project=chromium \ - --project=IntakeFormCustomPropertyFields \ - --project=IntakeForm \ --grep-invert @dataAssetRules \ --shard=${CHROMIUM_SHARD}/5 fi @@ -279,6 +277,45 @@ jobs: retention-days: 1 if-no-files-found: ignore + # Intake Form tests mutate global form requirements and must not overlap + # projects that create domains or data products. The primary artifacts are + # uploaded first because this second Playwright run clears its output paths. + - name: Run isolated Intake Form tests + id: run-intake-tests + if: >- + ${{ !cancelled() && matrix.shardIndex == 1 && + (steps.run-tests.outcome == 'success' || steps.run-tests.outcome == 'failure') }} + working-directory: openmetadata-ui/src/main/resources/ui/ + run: npx playwright test --project=IntakeForm + env: + PLAYWRIGHT_IS_OSS: true + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Upload Intake Form Playwright report + uses: actions/upload-artifact@v4 + if: ${{ !cancelled() && matrix.shardIndex == 1 && steps.run-intake-tests.outcome != 'skipped' }} + with: + name: playwright-report-1-intake + path: openmetadata-ui/src/main/resources/ui/playwright/output/playwright-report + retention-days: 5 + + - name: Upload Intake Form test results (screenshots, traces) + uses: actions/upload-artifact@v4 + if: ${{ !cancelled() && matrix.shardIndex == 1 && steps.run-intake-tests.outcome != 'skipped' }} + with: + name: playwright-test-results-1-intake + path: openmetadata-ui/src/main/resources/ui/playwright/output/test-results + retention-days: 5 + + - name: Upload Intake Form results JSON for summary + uses: actions/upload-artifact@v4 + if: ${{ !cancelled() && matrix.shardIndex == 1 && steps.run-intake-tests.outcome != 'skipped' }} + with: + name: playwright-results-json-1-intake + path: openmetadata-ui/src/main/resources/ui/playwright/output/results.json + retention-days: 1 + if-no-files-found: ignore + - name: Clean Up run: | cd ./docker/development