Repository navigation
ci: run the jobs side by side, and split the E2E tests of the CLI in four shards - #433
Merged
Merged
Conversation
…four shards A run took about 11 minutes in one job, and the E2E tests of the CLI were 566 seconds of them. The checks that need neither a build nor a browser, the build, the E2E tests of the extension and the E2E tests of the CLI are jobs of their own, and the last one runs in four shards with vitest --shard. Each shard has a whole runner, as the suite had, so the tests that read timings keep their margin. .github/actions/setup installs Node, the dependencies and, when asked, the Chromium of Playwright for all of them. The decision to skip the slow jobs on a pull request that only changes documentation is a job the others depend on.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A run of CI took about 11 minutes in one job,
validate. The E2E tests of the CLI were 566 seconds of the last run onmain.The jobs run side by side, each on its own runner:
changeschecksbuilde2e-extensione2e-cli(4 shards)vitest --shardfail-fastis off: a shard that fails does not stop the others..github/actions/setupinstalls Node, the dependencies and, when asked, the Chromium of Playwright.validategoes away.mainhas no branch protection and no required checks.Not done: a cache for Chromium (its install takes 18 seconds, and restoring a cache of that size about the same) and a cache for
.next(prebuildremoves it on purpose).Test plan
actionlint(rhysd/actionlint:latestin Docker, macOS): no errorscli/tests/e2e(19, 18, 18 and 18), none twice and none left out. Checked on macOS with Node 26.13.1, running each shard with a test name that matches nothing and reading the files of its JSON reportchecks42 s,build1 min 35 s, the E2E tests of the extension 1 min 26 s, and a shard of the CLI between 2 min 27 s and 4 min 5 s