fix(ci): parameterize pinned FFmpeg version with explicit preflight check (BtbN dropped 7.1) - #13169
Open
santhiprakash wants to merge 2 commits into
Open
Conversation
The JetBrains test job pins AnimMouse/setup-ffmpeg to version 7.1, but BtbN/FFmpeg-Builds keeps only the most recent release branches under its rolling 'latest' tag and the 7.1 assets are no longer published, so the asset URL the action builds now 404s: https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n7.1-latest-linux64-gpl-7.1.tar.xz AnimMouse/setup-ffmpeg pipes the download into tar -xJ, so the 404 body reaches tar and the failure surfaces one stage downstream as 'xz: (stdin): File format not recognized' rather than an explicit HTTP error. Setup FFmpeg runs early in the composite action, so the job dies before Gradle, prepackage, the binary build or any tests run, which means every PR fails jetbrains-tests (and therefore require-all-checks-to-pass) even when the change has no JetBrains impact. Bump the pin to 8.1, which BtbN currently publishes. Verified: ffmpeg-n7.1-latest-linux64-gpl-7.1.tar.xz -> 404 ffmpeg-n8.1-latest-linux64-gpl-8.1.tar.xz -> 200 Closes continuedev#13164
Author
|
I have read the CLA Document and I hereby sign the CLA |
…heck Builds on the 7.1→8.1 bump in the parent commit. Instead of hard-coding 'version: 8.1', expose ffmpeg-version as a composite-action input (default 8.1) so the next rotation only needs a single line change. The 7.1 failure mode was particularly nasty: the setup-ffmpeg action pipes the artifact URL through 'wget -q' and straight into 'tar -xJ', so a 404 produces 'xz: (stdin): File format not recognized' two stages downstream. Add a preflight step that HEADs the asset URL with curl and fails explicitly with the missing artifact path so the next time BtbN rotates a branch out, the log says so directly. Closes continuedev#13164
santhiprakash
force-pushed
the
fix/13164-jetbrains-ffmpeg-8.1
branch
from
August 21, 2026 09:35
7491323 to
2e6fadc
Compare
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.
Closes #13164.
BtbN/FFmpeg-Builds keeps only the most recent release branches under its rolling
latesttag. The 7.1 artifacts were dropped as newer branches shipped, soAnimMouse/setup-ffmpeg@v1's built URL silently 404s,wget -qsuppresses the body, andtar -xJreports a misleadingxz: (stdin): File format not recognizedtwo stages downstream. The wholejetbrains-testsjob then short-circuits at the FFmpeg step before Gradle, prepackage, the binary build, orRun testsexecute — every PR appears red on this check for a reason that has nothing to do with the diff.This PR does two things on
.github/actions/run-jetbrains-tests/action.yml:Parameterize the pin. Adds a
ffmpeg-versioninput (default"8.1") and routes both the preflight check andAnimMouse/setup-ffmpeg@v1'sversionthrough it. When BtbN drops 8.1 the next time, the change is a single input value rather than a hard-codedversion:swap.Preflight-check the artifact. Adds a
Check FFmpeg artifact is availablestep that HEADs the asset URL withcurl -sSIL --retrybefore the action runs and fails with an explicit::error::FFmpeg $VERSION is no longer published by BtbN/FFmpeg-Builds. Bump ffmpeg-version. Missing: $urlannotation when the asset is missing or unreachable. The next time BtbN rotates a branch out, the log says so directly instead of surfacing as a cryptic tar format error.The 8.1 default was verified against BtbN's
latesttag at PR time: the URLhttps://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n8.1-latest-linux64-gpl-8.1.tar.xzreturns 200, downloads, extracts, and produces workingffmpeg/ffprobebinaries (also confirmed in the recent green run on #13163 which already carries this exact input+preflight pair as part of its larger diff).Test plan
jetbrains-testsoutcome on the fresh run.Note on the autocomplete test failure
The first push of this PR (commit
f0d8a029d) showedjetbrains-testsfailing atextensions/intellij/src/testIntegration/.../Autocomplete.kt:42(assertTrue(text.contains("TEST_LLM_RESPONSE_0"))) instead of at the FFmpeg step — i.e. fixing the pin unblocked the test runner and surfaced a separate, pre-existing failure in the autocomplete integration test that had been hidden by the 7.1 404 since 2026-08-19T22:00Z. That failure appears tied to other code changes also being carried by #13163 (which is the last PR observed with a greenjetbrains-testson this branch); fixing it is out of scope for the FFmpeg bump here. Happy to follow up in a separate PR if the maintainer wants me to dig into it; otherwise #13163 should land the relevant changes alongside this fix.