ci(test): fail the Linux leg when a real-server package is missing - #44
Merged
Merged
Conversation
Every real-server suite in this script is #[ignore]d, so one that does not run is reported by nobody: a warning left the job green over no tests at all. MIXENGINE_ALLOW_MISSING_PACKAGES=1 is the escape hatch for running the script by hand without the archives — a variable somebody has to type, which is the difference between an exception and a default.
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.
Every real-server suite in
.github/scripts/test-no-network.shis#[ignore]d, so one that does notrun is reported by nobody: the ten
::warningbranches left the job green over no tests at all.Review finding R4.
They now call one
missinghelper that prints::errorand exits 1, and warns only whenMIXENGINE_ALLOW_MISSING_PACKAGES=1is set — a variable somebody has to type, which is thedifference between an exception and a default. It is documented beside the other knobs in
build-and-release.md, and nothing in CI sets it.The consequence as the finding stated it does not hold today, and the review entry says so. A
mirror that is down never reaches these branches: every fetch step runs
set -euo pipefailwithcurl --fail --retry 3, so a failed download fails that step and the job stops before this scriptruns — and
Linux-X64, the only architecture this leg uses, has a published archive for all ninepackages. What this buys is a contract enforced by the thing that holds it, for two live cases: a
fetch step that learns to skip on Linux (three already do exactly that on Windows-ARM) and a
developer running the script by hand.
Left alone deliberately, and argued in the review entry:
ci.yml's nginx step carriesif: … && env.MIXENGINE_NGINX_PACKAGE != '', the same shape in the workflow, serving aWindows-on-ARM leg that does not exist yet.
CI run 33182744999 is green.
bench (ubuntu-latest)took three attempts, which is the documentedbimodal warm-start measurement and not this branch: medians 14901, 10343, 9071 ms on the same
commit, against a master control run at 5984 ms that contained an 18695 ms round of its own. This
branch changes one shell script the bench job does not run and one markdown file.