Outputs and an input that answer "is a release due?" and "is this tag the newest entry?" #30
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
actions/changelog#30
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Two workflows consume the action, and each re-derives a verdict in shell from outputs the action already has.
A cut workflow, on a push to the trunk:
A build workflow, on the pushed tag:
The case is mikluko/nats-operator#21, and
uptime-com/upreleaser'scut-releasecarries the same three guards.Request
due(trueorfalse): the newest entry names a version, no tag names it, and it is not a prerelease. An inputdue-prerelease, defaultfalse, lets a prerelease count as due.due-reason: one sentence for thefalsecase, such as "0.3.1 is already tagged", also written to the step summary.expect: a version or a tag name. The action fails unless the newest entry names it, compared by the version it names, as tags already are, sov1.2.3and1.2.3both match[1.2.3]. Empty means no expectation.The names are suggestions.
What it leaves of the workflows
Not requested
The action still proposes and pushes no tag. The README keeps tag spelling with whatever cuts it, and these three additions only report what the action read.
Open question
Whether the action should also push the tag, behind an input with a tag format. It would remove the last two shell lines and reverse that position in the README.
Partially implemented in #31.
Implemented: the
dueanddue-reasonoutputs and thedue-prereleaseinput (items 1 and 2). One addition to what was asked:dueisfalsewhere the repository's tags cannot be read.Won't fix: the
expectinput (item 3). As a bare input it would fail outside the register, with no annotation and no say forfail-on, and it fits only the trunk ceremony: on a candidate tag the entry and the tag differ by design. A workflow building on a tag keeps its own comparison of the ref againstversion.The open question, whether the action should push the tag, was not taken up.