I'm preparing a proposal for the GitHub workflow hooks project and wanted to confirm my understanding of the current and desired workflow.
PR Lifecycle
- PR is opened → automatically label
needs review affects: masterandaffects: ucrshould be automatically set from the PR target branch.- Review begins → remove
needs reviewand addin review - Reviewer requests changes → add
needs reply to review - PR is approved → remove
needs reply to review, removein review, and addpull request: ready to push to Gerrit
Issue Lifecycle:
- Issue opened → label
status: new - PR merges into
mastercloses linked issues and removesstatus: new - PR merges into
ucrremovesstatus:newand addsissue: pending component release - New release tag → closes all issues with
issue: pending component releaseand removes the label.
Other Questions
- Is the label
Is Still Draftbased off the draft status of the PR or some other criteria? I see draft PRs without the label and vice versa, ready-for-review PRs with the label. - Is Gerrit used to merge every PR or only select ones?
- Would it be helpful to automatically prevent conflicting labels, such as having
status: newandstatus: in progresssimultaneously?