# playwright-merge Download all Playwright blob reports from shard jobs, merge them into a single HTML + JUnit report, and optionally upload the HTML report to S3. ## Inputs | Input | Required | Default | Description | |-------|----------|---------|-------------| | `working-directory` | No | `.` | Directory containing `package.json` and `playwright.config.ts` | | `node-version` | No | `24` | Node.js version | | `pnpm-version` | No | `10.33` | pnpm version | | `jfrog-token` | No | `""` | JFrog npm auth token | | `role-arn` | Yes | — | IAM role ARN for AWS authentication | | `aws-access-key-id` | Yes | — | AWS access key ID | | `aws-secret-access-key` | Yes | — | AWS secret access key | | `project-name` | Yes | — | Project name used as the folder in the report bucket (e.g. `hs-pricelist`) | | `publish-test-reports` | No | `true` | Whether to upload the report to S3 and print the URL at `https://test-reports.schmalz.com` | ## Usage ```yaml - uses: https://schmalz-git.git.onstackit.cloud/schmalz/shared-actions/playwright-merge@playwright-merge-v1 with: working-directory: frontend node-version: 22 jfrog-token: ${{ secrets.JFROG_TOKEN }} role-arn: arn:aws:iam::953815822701:role/deployment-role aws-access-key-id: ${{ secrets.DB_STAGE_DEPLOYMENT_ACCESS_KEY }} aws-secret-access-key: ${{ secrets.DB_STAGE_DEPLOYMENT_SECRET_ACCESS_KEY }} project-name: hs-pricelist ``` ## Notes - Intended as a follow-up job after all `playwright-run` shard jobs complete. - Downloads shard artifacts into `all-blob-reports/` and merges them with `playwright merge-reports`. - Generates HTML report in `playwright-report/` and JUnit XML in `test-results/junit.xml`. - Uploads report files to `s3://com.schmalz.db.stage.test-reports/reports///` when `publish-test-reports` is `true`. - Prints the final report URL on `https://test-reports.schmalz.com`.