ci: update dependency ubuntu to v26 - #110
Merged
Merged
Conversation
Update ubuntu from 24.04 to 26.04
Renovate's runner-image bump updates literal `runs-on:` values only; it does not traverse strategy.matrix.include[], so the two `runner:` labels feeding the native per-arch build job were left on ubuntu-24.04 (confirmed in doc-scanner #209). Left alone this ships a split-brain build that stays green, since both images work and nothing flags the mismatch. Bump both legs to ubuntu-26.04 / ubuntu-26.04-arm and extend the existing native-runner comment to record that these labels are invisible to Renovate and must be updated by hand alongside its PRs.
Contributor
Author
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
The built-in github-actions manager extracts runner labels from literal `runs-on:` values only and does not traverse strategy.matrix.include[] (confirmed in doc-scanner #209), so the native per-arch build legs were unmanaged -- the previous commit had to bump them by hand. Add a customManager keyed on the `runner:` lines. It captures only the numeric version, so the arm64 leg's `-arm` suffix falls outside the match and survives the replace; that is also why a single matchString covers both legs. depName `ubuntu` and docker versioning match what the built-in manager emits, so these deps group into the same branch and PR as the `runs-on:` ones instead of opening a second. Rewrite the load-bearing native-runner comment to point at the manager rather than instruct a hand-edit, and to record that the `runner: ubuntu-<major>.<minor>` shape is what the manager matches on. Validated with renovate-config-validator (renovate@41).
actionlint validates runner labels against a list baked into its binary. Ubuntu 26.04 went GA 2026-09-17, after the latest actionlint release (v1.7.12, 2026-03-30), so it rejected all 13 labels as unknown. Declare them via .github/actionlint.yaml, the escape hatch actionlint's own error message points to. This is the first fleet repo to hit it: the other migrated repos do not run actionlint. Unlike the Renovate side, this cannot live in shared config -- actionlint discovers its config by path (.github/actionlint.yaml). Also drop the local `ubuntu` customManager added in the previous commit; that belongs in the shared preset (owine/renovate-config), so the matrix comment now points there instead. Note actionlint DOES expand strategy.matrix.include[] -- it flagged 8 labels in build.yml, the 6 `runs-on:` values plus both matrix legs. It catches precisely the gap Renovate's extractor misses.
owine
added a commit
that referenced
this pull request
Sep 19, 2026
The comment merged in #110 told readers to keep a `runner: ubuntu-<major>.<minor>` shape, which describes neither the arm leg nor what the shared preset's manager actually tracks. owine/renovate-config 24ad0fd landed the `github-runners` customManager, and its capture takes the whole remainder after the OS name, suffix included. That is correct: the datasource's ubuntu release list carries `26.04` and `26.04-arm` as separate version strings (likewise macos `15-large`/`15-intel`, windows `11-arm`), so `26.04-arm` is its own version, not `26.04` with decoration. Treating the suffix as cosmetic would file the arm leg under the x64 version stream and could propose an arm label that does not exist, since arm images can lag x64. Restate the invariant accordingly and point at the preset commit. Comment-only; no behaviour change.
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.
This PR contains the following updates:
24.04→26.04Configuration
📅 Schedule: (in timezone America/Chicago)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.