Skip to content

ci(cli): run E2E tests in parallel - #1726

Open
betegon wants to merge 4 commits into
mainfrom
bt/cli-e2e-parallel
Open

betegon wants to merge 4 commits into
mainfrom
bt/cli-e2e-parallel

Conversation

@betegon

@betegon betegon commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

The original CLI job had a 12m26s median. Run E2E in parallel and remove repeated preparation/builds; the latest Test run took 10m21s (single run).

Reuse the standalone build, build the npm package once, and share Node version pins. Standalone and npm tests remain covered. CodeQL is unchanged.

@vercel

vercel Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
sentry-local Ready Ready Preview Oct 30, 2026 12:42pm UTC

Request Review

@betegon
betegon marked this pull request as ready for review October 29, 2026 19:45
@github-actions github-actions Bot added the risk: medium PR risk score: medium label Oct 29, 2026
- name: Build standalone CLI
run: pnpm --filter sentry run build
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should defer this step after the standalone build and use that already-built artifact for e2e tests. This should also save us time.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Node 24 switch already follows the standalone build and E2E reuses the binary via SENTRY_CLI_BINARY.

also removed the duplicate standalone build from the CLI project job

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

???

The lines above this literally are:

- name: Build project dependencies
        run: pnpm --filter 'sentry^...' --if-present run build
      - run: pnpm --filter sentry run ci:prepare
      - name: Build standalone CLI
        run: pnpm --filter sentry run tsx script/build.ts --single

Which builds the dependencies and gets a new CLI build. We should be using the build going in for nightly which means we need to download it from a previous job as an artifact.

Comment thread .github/workflows/test.yml Resolved
assert.doesNotMatch(workflow.split("\njobs:", 1)[0], /paths(?:-ignore)?:/);
});

it("runs CLI E2E independently after project discovery", () => {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No garbage tests please.

This branch was successfully deployed

1 active deployment
Preview — 1b42251f Deployed Oct 30, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk: medium PR risk score: medium

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants