Repository navigation
ci(publish): pin the runner to the libmongoc floor's ubuntu - #29
Merged
Merged
Conversation
Renovate (#17) moved publish.yml to ubuntu-26.04 with the actions majors. Ubuntu 26.04 ships mongo-c-driver 2.2.2 as libmongoc2/libbson2, and the cinterop .def is generated with the library names found on the build host, so the next published klib would have demanded -lmongoc2 -lbson2 from every consumer on the supported floor (libmongoc 1.26, Ubuntu 24.04, M-81). No publish has run since #17. The runner goes back to ubuntu-24.04 and Renovate no longer touches Ubuntu runner labels: the next label is raising the floor, not a bump. MONGKN_REPO_URL was read by the verification step only, so setting the secret would have pointed the check away from where the upload went. One job-level value now feeds both: the upload as -Psborka.snapshotRepository, the check as its root. The change-stream KDoc still said four threads; the default is 32 since M-78. The same stale number is corrected in the two test-side comments.
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.
Why
Renovate (#17) moved
publish.ymlfromubuntu-24.04toubuntu-26.04together with the actions majors. The runner label is not incidental here:mongkn-core/build.gradle.ktsgenerates the cinterop.defwith the library names it finds on the build host and bakes them into the klib'slinkerOpts.Checked in the stock images (
apt-get install libmongoc-dev libbson-dev, then the names the resolver would see in/usr/lib/x86_64-linux-gnu):.sonamesubuntu:24.04libmongoc-1.0.so,libbson-1.0.so-lmongoc-1.0 -lbson-1.0ubuntu:26.04libmongoc2.so,libbson2.so-lmongoc2 -lbson2So the next publish from 26.04 would have produced a klib that no consumer on the supported floor (libmongoc 1.26, Ubuntu 24.04, M-81) can link. The downstream native images in use are all
ubuntu:24.04withlibmongoc-1.0-0t64. No publish has run since #17 (the lastpublishrun predates it), so nothing broken went out.What
publish.yml: back toubuntu-24.04, with the reason next to the label. The Linux leg ofbuild.ymlis already on 24.04, so what is published is again what is tested..github/renovate.json5: Ubuntu runner labels (github-runners/ubuntu) are disabled for Renovate. The harness preset automergesgithub-actionsmajors, and no pull-request check executespublish.yml, so a green PR said nothing about this label. Moving it is raising the floor, done by editingpublish.yml,build.ymland M-81 together. Checked with a Renovate dry run (--platform=local --dry-run=lookup): with the rule the log saysDependency: ubuntu, is disabled; a control without it does not.MONGKN_REPO_URL: it was read by the verification step only, while the upload went whereversborka.snapshotRepositorypointed, so setting the secret would have sent the check somewhere the artefact never went. One job-level value now feeds both: the upload as-Psborka.snapshotRepository, the check as its root; without the secret it is sborka's default, as before.ChangeStreamFlowKDoc (and the same claim inCollectionOps.watch): it said "four subscriptions" would stall the client; the default pool isDEFAULT_IO_THREADS= 32 since M-78, and the text now refers to the pool size instead of a number. Two test-side comments that still called four the default are corrected too.Verification
actionlintclean onpublish.yml;renovate-config-validator --strictpasses.build, both legs) is the build proof.publish.ymlitself isworkflow_dispatchonly and is not run by this PR.