Repository navigation
ci: version check counts the workflow, no-release label, publish only from the head of master - #65
Conversation
… from the head of master check-version.sh takes the structure of the other OpenIPC repositories: one PROGRAM_VERSION definition, the format checked only when the version changes, Markdown files in the code paths ignored. CI passes HEAD^1, the base side of the pull request's merge commit (#63). The build workflow counts as build: it builds the release files. A change that leaves them as they are (a test or publication step, a tidy-up) takes the no-release label and needs no new version (#64). The release job publishes only when the run built the current head of master, so a re-run of an older run does not roll "latest" back (#62).
PR Summary by QodoCheck release versions against PR merges and publish only from master’s head
AI Description
Diagram
High-Level Assessment
Files changed (2)
|
Code Review by Qodo
1. A label can ship changed binaries
|
…d lookup The check now runs right before "latest" is touched, in the same step, and a failed git ls-remote fails the job instead of skipping the release.
|
/review |
|
Code review by qodo was updated up to the latest commit 4f2c68a |
Closes #62. Closes #63. Closes #64.
.github/check-version.shfollows OpenIPC/vtesse and OpenIPC/cerberus: onePROGRAM_VERSIONdefinition (any other count fails), the format checked only when the version changes, Markdown files in the code paths ignored. CI calls it withHEAD^1, the base side of the pull request's merge commit, which is what CI tested (check-version.sh: compare with HEAD^1 and skip Markdown, as in vtesse #63).no-releaselabel and passes without one, as in ci: a no-release label lets a change that keeps the binaries skip the version; review follow-ups cerberus#39; the workflow now also runs onlabeled/unlabeled(Version check: workflow build steps and a no-release label #64).GITHUB_SHAwithgit ls-remote origin refs/heads/masterand publishes only from the head of master; otherwise it leaves a notice and does nothing, so a re-run of an older run cannot rolllatestback (Release: publish "latest" only from the head of master #62).This pull request changes only CI and keeps the release files as they are:
no-release, no version bump.Checked locally (debian bookworm container): shellcheck v0.10.0 clean; the script against 12 synthetic cases — code change without a bump fails and passes with
NO_RELEASE=true, a workflow-only change fails and passes withNO_RELEASE=true, docs, Markdown inci/and other.github/files pass, bump with a CHANGELOG section passes, a missing section, a lower version, a leading zero and two definitions fail; on this branch against master it fails without the label and passes with it.