ci: pre-install ripgrep on Windows unit runners (LAC-2700) - #36
Merged
lacymorrow merged 1 commit intoJul 10, 2026
Merged
Conversation
The Ripgrep test suite bootstraps rg.exe on first use: download the 15.1.0 release zip and extract it via PowerShell Expand-Archive. On GitHub-hosted Windows runners that cold path exceeds Bun's 5s per-test timeout, killing the child process with SIGTERM and failing every ripgrep-dependent test with 'Ripgrep.Error: ripgrep execution failed'. RipgrepBinary resolves rg from PATH before falling back to download, so installing the pinned release once in a workflow step removes the cold-download cost from the test path entirely. Uses the same github.com release asset the app itself downloads (no chocolatey community-feed dependency) and verifies the binary runs.
|
Note Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported. |
lacymorrow
merged commit Jul 10, 2026
85c4cc8
into
LAC-2385/blacksmith-to-github-runners
6 of 9 checks passed
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.
Problem
The
unit (windows)job fails on GitHub-hosted runners: everyRipgrepsuite test errors withRipgrep.Error: ripgrep execution failed(see run 29041726352). The first ripgrep call bootstraps the binary — downloadingripgrep-15.1.0-x86_64-pc-windows-msvc.zipand extracting it via PowerShellExpand-Archive— which exceeds Bun's 5s per-test timeout on hosted runners, so the child process is killed with SIGTERM.Pre-existing on hosted Windows runners (same failure on run 27512032937); surfaced, not caused, by the LAC-2385 runner switch — same story as the linux failures fixed in #33.
Fix
RipgrepBinary(packages/core/src/ripgrep/binary.ts) resolvesrg.exefrom PATH before falling back to download. This adds a Windows-only workflow step that downloads the pinned 15.1.0 release once, extractsrg.exewith7z(preinstalled on hosted runners), sanity-checks it with--version, and prepends it toGITHUB_PATH— so tests never pay the cold-download cost.Deliberately uses the same github.com release asset the app itself downloads rather than
choco install ripgrep(chocolatey community feed is rate-limit-prone on hosted runners) and pins the version to matchbinary.ts.Acceptance
unit (windows)reaches success on GitHub-hostedwindows-2025.Targets
LAC-2385/blacksmith-to-github-runners(PR #28), same as the sibling linux fix #33.Closes LAC-2700.