Repository navigation
developer guide: link the release steps in osism/release - #1102
Merged
Merged
Conversation
✅
|
| Descriptor | Linter | Files | Fixed | Errors | Max errors | Warnings | Elapsed time |
|---|---|---|---|---|---|---|---|
| ✅ ACTION | actionlint | 5 | 0 | 0 | 0.03s | ||
| ✅ JSON | jsonlint | 4 | 0 | 0 | 0.07s | ||
| ✅ JSON | prettier | 4 | 0 | 0 | 0.27s | ||
| ✅ JSON | v8r | 4 | 0 | 0 | 6.95s | ||
| ✅ MARKDOWN | markdownlint | 171 | 0 | 0 | 1.99s | ||
| ✅ MARKDOWN | markdown-table-formatter | 171 | 0 | 0 | 0.32s | ||
| ✅ REPOSITORY | betterleaks | yes | no | no | 0.52s | ||
| ✅ REPOSITORY | checkov | yes | no | no | 16.52s | ||
| ✅ REPOSITORY | git_diff | yes | no | no | 0.06s | ||
| ✅ REPOSITORY | secretlint | yes | no | no | 0.99s | ||
| ✅ REPOSITORY | trufflehog | yes | no | no | 2.94s | ||
| ✅ SPELL | codespell | 181 | 0 | 0 | 0.5s | ||
| lychee | 181 | 1 | 0 | 44.96s | |||
| ✅ YAML | prettier | 6 | 0 | 0 | 0.32s | ||
| ✅ YAML | v8r | 6 | 0 | 0 | 5.86s | ||
| ✅ YAML | yamllint | 6 | 0 | 0 | 0.54s |
Detailed Issues
⚠️ SPELL / lychee - 1 error
📝 Summary
---------------------
🔍 Total.........1177
🔗 Unique.........887
✅ Successful....1045
⏳ Timeouts........30
🔀 Redirected.......5
👻 Excluded.......101
❓ Unknown..........0
🚫 Errors...........1
⛔ Unsupported......1
Errors in docs/appendix/security/ossa-2026-001.md
[TIMEOUT] https://bugs.launchpad.net/keystonemiddleware/+bug/2129018 (at 142:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-002.md
[TIMEOUT] https://bugs.launchpad.net/nova/+bug/2137507 (at 134:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-015.md
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2148398 (at 194:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2148477 (at 195:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2149775 (at 196:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2149789 (at 197:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2150089 (at 198:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2150379 (at 199:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-022.md
[TIMEOUT] https://bugs.launchpad.net/nova/+bug/2151252 (at 159:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-032.md
[TIMEOUT] https://bugs.launchpad.net/neutron/+bug/2152113 (at 271:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-034.md
[TIMEOUT] https://bugs.launchpad.net/designate/+bug/2142581 (at 179:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/designate/+bug/2142581 (at 254:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/designate/+bug/2160533 (at 186:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/designate/+bug/2160533 (at 253:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-037.md
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2153453 (at 179:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2153453 (at 311:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2158538 (at 183:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/keystone/+bug/2158538 (at 312:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-038.md
[TIMEOUT] https://launchpad.net/bugs/2158998 (at 124:3) | Request timed out
[TIMEOUT] https://launchpad.net/bugs/2158999 (at 125:3) | Request timed out
[TIMEOUT] https://launchpad.net/bugs/2160020 (at 127:3) | Request timed out
[TIMEOUT] https://launchpad.net/bugs/2161330 (at 126:3) | Request timed out
Errors in docs/appendix/security/ossa-2026-039.md
[TIMEOUT] https://bugs.launchpad.net/octavia/+bug/2162101 (at 245:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/octavia/+bug/2162101 (at 387:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/octavia/+bug/2162103 (at 248:5) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/octavia/+bug/2162103 (at 388:3) | Request timed out
[TIMEOUT] https://bugs.launchpad.net/octavia/+bug/2167565 (at 389:3) | Request timed out
Errors in docs/guides/deploy-guide/metalbox.md
[404] https://github.com/osism/metalbox/blob/main/zuul/vars/container-images-openstack-2024.2.yml (at 83:101) | Rejected status code: 404 Not Found
Errors in docs/guides/troubleshooting-guide/openstack.mdx
[TIMEOUT] https://bugs.launchpad.net/neutron/+bug/2111498 (at 268:13) | Request timed out
Errors in docs/release-notes/osism-7.md
[TIMEOUT] https://www.openstack.org/software/openstack-bobcat (at 978:38) | Request timed out
Errors in docs/release-notes/osism-9.md
[TIMEOUT] https://bugs.launchpad.net/kolla/+bug/2111620 (at 97:47) | Request timed out
Hint: Followed 5 redirects. You might want to consider replacing redirecting URLs with the resolved URLs. Use verbose mode (`-v`/`-vv`) to see redirection details.
See detailed reports in MegaLinter artifacts
Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)
- Documentation: Custom Flavors
- Command:
npx mega-linter-runner@10.1.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,JSON_JSONLINT,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_BETTERLEAKS,REPOSITORY_SECRETLINT,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,SPELL_CODESPELL,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

Show us your support by starring ⭐ the repository
ideaship
force-pushed
the
docs/release-component-builds
branch
from
October 9, 2026 04:57
bf96e46 to
d9304e7
Compare
Add building the component images as the first step of the release checklist. A release candidate or release version pins component images by the versions that create-version.py takes from the tags of osism/release, so the images have to be built, and their builds have to succeed, before either can be created. The step does not repeat the procedure. It links to the section of the osism/release README that describes it and states the condition for continuing: all tag builds have succeeded, the image checks of the README pass and the Renovate PRs for the new images are merged. The README owns the steps and their order, so the two documents cannot drift apart on them. The following steps are renumbered and the cross-reference to the release candidate jobs step is updated. Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Roger Luethi <luethi@osism.tech>
Describe how release candidates lead to the final release. A release candidate pins the component images built for it, so a fix only reaches the next release candidate through new images. The testing step now describes that loop: fix the bug, build new images with a new version and create the next release candidate from them, then deploy and test it again. The step creating the final release version now states that it must pin the same versions as the last tested release candidate. create-version.py copies latest/base.yml of osism/release and takes the image versions from its newest tags, so any update merged or image built after the last release candidate would end up untested in the release. Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Roger Luethi <luethi@osism.tech>
The release notes step of the release checklist now links to the two sections of the osism/release README that describe how the release notes come about: the per-component changelog PRs, generated and merged in the component repositories, and the release notes generation, which inserts the new section into docs/release-notes/osism-<major>.md of this repository and can open the pull request. As with the component image step, the README owns the procedure and the developer guide links to it. The "How we write release notes" section now says where the per-component changelogs are generated: in the component repositories, with a script of osism/release. It links to the changelog generation section of the README instead of the README as a whole. The step keeps one note of its own for major releases: the release notes generation only adds a section to an existing page that has a release table, so the page for a new major release is created first. Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Roger Luethi <luethi@osism.tech>
The note on major releases names one prerequisite before the release candidate is built: the kolla inventory check in osism/generics has to follow the new OpenStack series. Add the second one: latest/openstack.yml in osism/release has to point to the new series before the component images are built. The kolla and kolla-ansible tag builds take their OpenStack series from latest/openstack.yml at the commit of their release tag. With the symlink still on the previous series, the images of the release are built for that series. The note links to the tag creation section of the osism/release README, which describes the rule and the check that reports a symlink that is behind. Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Roger Luethi <luethi@osism.tech>
The tag builds push to osism.harbor.regio.digital, and the image checks of the osism/release README run against it. Deployments, including the testbed release candidate jobs, pull from public registries such as registry.osism.tech. The kolla release images are not copied there automatically, by design, so that images of a wrongly built tag do not reach users. Nothing in the guide said so: for 11.0.0, the kolla/release/2026.1 images passed the checks but were missing on registry.osism.tech, and every 11.0.0 deployment failed to pull kolla-toolbox. Add to step 1: once the image checks pass, ask a Harbor administrator to replicate the kolla images of the build, and check that they arrived under the namespace of the right series before continuing. The check uses the SBOM image of the build. It is present for the replicated 2025.1 build 0.20261001.0 and was missing for the 2026.1 build 0.20261008.0. Assisted-by: Claude:claude-opus-5-5 Signed-off-by: Roger Luethi <luethi@osism.tech>
ideaship
force-pushed
the
docs/release-component-builds
branch
from
October 9, 2026 16:20
d9304e7 to
68bcdc1
Compare
ideaship
marked this pull request as ready for review
October 9, 2026 16:21
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.
Updates the release checklist in the developer guide. The osism/release README owns the procedure inside that repository; the developer guide links to its sections and states only when to continue, so the two documents do not have to be kept in sync step by step.
tagbuilds have succeeded, the image checks of the README pass and the Renovate image PRs are mergedosism-N.mdpage with its release table is created firstregistry.osism.techautomatically, so that a wrongly built tag never reaches users; once the image checks pass, a Harbor administrator replicates the build, and the SBOM image of the build shows that it arrived under the right serieslatest/openstack.ymlin osism/release to the new series before the images are built, since the kolla and kolla-ansible builds take their series from itRebased onto #1100 (seed image step, generator defaults): the seed image step is now step 6, and its cross-references are adjusted to the new numbering.
The README anchors linked here exist on
mainalready. The README PR marks them, adds the rebuild procedure and the OpenStack series rule:🤖 Generated with Claude Code