# playwright-e2e Run Playwright E2E tests with optional sharding, upload results to S3. ## Inputs | Input | Required | Default | Description | |-------|----------|---------|-------------| | `jfrog-token` | Yes | | JFrog npm auth token | | `s3-reports-bucket` | Yes | | S3 bucket for report upload | | `s3-reports-prefix` | Yes | | S3 path prefix | | `aws-role-arn` | Yes | | IAM role ARN for OIDC authentication | | `working-directory` | No | `e2e` | Directory containing Playwright config | | `playwright-version` | No | `v1.58.2` | Playwright version tag for browser cache key | | `pnpm-version` | No | `10.11` | pnpm version | | `shard-index` | No | `1` | Current shard (1-based) | | `shard-total` | No | `1` | Total shards. 1 = no sharding | | `aws-profile` | No | `stage` | AWS CLI profile name | | `extra-deps` | No | `""` | Space-separated apt packages to install | ## Usage ```yaml - uses: schmalz/shared-actions/.github/actions/playwright-e2e@v1 with: jfrog-token: ${{ secrets.JFROG_TOKEN }} s3-reports-bucket: my-reports-bucket s3-reports-prefix: pr-${{ github.event.number }} aws-role-arn: ${{ secrets.AWS_ROLE_ARN }} shard-index: "1" shard-total: "4" ``` ## Notes - Playwright browsers are cached between runs using the `playwright-version` input as cache key. - Reports are uploaded to `s3:////shard-/`. - Uses JFrog Artifactory as the npm registry for dependency installation.