mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-08 17:06:15 -08:00
ci(e2e): run the macOS Electron suite as two shards (#1707)
macOS runners are the scarcest on this account, so macOS now runs the Electron E2E suite as two Playwright shards instead of three; Ubuntu and Windows keep three. macOS shards get a 40-minute timeout. The summary job needed no change because it reads each shard's total from its report. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
8ebb7e3424
commit
b87291e388
2 files changed
+17
-7
No files matched your search
@@ -42,17 +42,26 @@ jobs:
|
||||
# The sequential Electron suite is split into Playwright shards (one
|
||||
# runner each, split by spec file). Measured on 2026-09-26, a third of
|
||||
# the suite is 6-12 minutes of test time on top of 3-7 minutes of
|
||||
# setup, so 30 minutes leaves room for retries on every OS.
|
||||
timeout-minutes: 30
|
||||
# setup. macOS uses two shards because its runners are the scarcest:
|
||||
# three macOS shards per run queued for 45-57 minutes on master. Half
|
||||
# of the suite is about 15 minutes of test time on macOS, so it gets
|
||||
# a longer timeout to leave room for retries.
|
||||
timeout-minutes: ${{ matrix.os == 'macos-latest' && 40 || 30 }}
|
||||
env:
|
||||
IPTVNATOR_ALLOW_PRIVATE_NETWORK_URLS: '1'
|
||||
NX_SKIP_NX_CACHE: true
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest, windows-latest]
|
||||
shard: [1, 2, 3]
|
||||
shard-total: [3]
|
||||
include:
|
||||
- { os: ubuntu-latest, shard: 1, shard-total: 3 }
|
||||
- { os: ubuntu-latest, shard: 2, shard-total: 3 }
|
||||
- { os: ubuntu-latest, shard: 3, shard-total: 3 }
|
||||
- { os: macos-latest, shard: 1, shard-total: 2 }
|
||||
- { os: macos-latest, shard: 2, shard-total: 2 }
|
||||
- { os: windows-latest, shard: 1, shard-total: 3 }
|
||||
- { os: windows-latest, shard: 2, shard-total: 3 }
|
||||
- { os: windows-latest, shard: 3, shard-total: 3 }
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
@@ -146,8 +146,9 @@ After an E2E run, generate the semantic summary with:
|
||||
pnpm run coverage:e2e:summary
|
||||
```
|
||||
|
||||
CI runs the Electron suite as three Playwright shards per OS
|
||||
(`--shard=<n>/3`, split by spec file because the suite is sequential). Each
|
||||
CI runs the Electron suite as Playwright shards (`--shard=<n>/<total>`, split
|
||||
by spec file because the suite is sequential): three shards on Ubuntu and
|
||||
Windows, two on macOS, whose runners are the scarcest and queued longest. Each
|
||||
shard uploads `playwright-report-electron-<os>-<n>`; the follow-up
|
||||
`Electron E2E summary` job downloads the shards of each OS into their own
|
||||
directory and runs the summary per OS with `--input=<directory>` and
|
||||
|
||||
Reference in new issue
Block a user