Repository navigation
check-versions: require the release tag on all - #2891
Merged
Merged
Conversation
Every component of a release is to carry the tag of the release round,
also when nothing changed since its previous tag, so that all
components of a release are tagged alike. The untagged-changes check
cannot enforce that: it only reports components with shipped changes.
For OSISM 11.0.3, ansible-playbooks-manager stayed at v0.20260721.0
because its only commits since then touched CI and CHANGELOG.md, and
the release had to be regenerated once it was tagged.
check-versions.sh gets a --release-tag VERSION option. With it, every
component that latest/base.yml pins directly ("components" of
etc/changelog-repositories.yml) must have the release tag or a newer
one as its newest tag, so python-osism v0.20261111.1 counts for the
round v0.20261111.0. A component without it is reported as untagged
and fails the check unless it is allowed with --allow. The images
built from the release tags are skipped like in the untagged-changes
check, since they are tagged after the check. Derived components
(pinned in a python-osism requirements file) are not required to
carry the tag: tagging them without changes would force another
python-osism release.
create-tags.sh passes the version it tags as --release-tag, so the tag
run enforces the rule. The README describes the option and says to tag
every component before the tag run.
Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Roger Luethi <luethi@osism.tech>
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 component of a release is to carry the tag of the release round, also when nothing changed since its previous tag, so that all components of a release are tagged alike. The untagged-changes check in
check-versions.shcannot enforce that: it only reports components with shipped changes. For OSISM 11.0.3, ansible-playbooks-manager stayed atv0.20260721.0because its only commits since then touched CI andCHANGELOG.md, and the release had to be regenerated once it was tagged.check-versions.sh --release-tag v0.YYYYMMDD.N: every component thatlatest/base.ymlpins directly (componentsofetc/changelog-repositories.yml) must have the release tag or a newer one as its newest tag (python-osismv0.20261111.1counts for the roundv0.20261111.0). A component without it is reported as untagged and fails the check unless allowed with--allow.create-tags.shpasses the version it tags as--release-tag, so the tag run enforces the rule.Checked against the state of
main: with--release-tag v0.20261111.0all 8 directly pinned components pass; withv0.20261112.0all 8 are reported.The matching step in the release guide:
🤖 Generated with Claude Code