-
Notifications
You must be signed in to change notification settings - Fork 485
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore(CI): automatically create and assign Milestones #4400
Conversation
@@ -19,6 +19,50 @@ jobs: | |||
template-path: 'docs/.project/RELEASE_TEMPLATE.md' | |||
package-path: 'app/package.json' | |||
|
|||
createMilestone: | |||
needs: createReleaseIssue | |||
if: github.event.issue.milestone |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this be enclosed in ${{ }}
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For if
clauses, using the expression syntax is optional (cf. https://docs.github.com/en/actions/learn-github-actions/expressions).
We can use the syntax for consistency. I think it looks cleaner without it, especially for multi-line conditions
9ccf5ea
to
528daa1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's try this out!
🤞 |
We are now in the code freeze, and the release will happen only next week. Will the script assign the current milestone to the issues closed in the meantime? I assume so, but we'd rather not assign the current milestone to the issues that will be released only with the next release. |
The new Milestone will only be created when the Release issue is closed. I am fine with changing the procedure to close the issue once main tasks are done and only the release presentation is still to be done. I would assume not many issues will be closed in that time (in the modeler) |
So eager to try this in practice 🏃 |
Do we/did we address this? We'll otherwise risk a bunch of false positives, working on issues for the next iteration. What we could do instead of reacting on close is to react on a checkbox being checked in the release list, opening a new milestone already while the old one is still open.
⬆️ Once checked, already create a new milestone (because DEV is essentially unfrozen at this point). |
That feels rather hacky and could break due to many things, like renaming of branches, manual changes to the template, etc. I also feel like Checking of something in the list having side-effects is unexpected magic. Alternatively, I would rather keep milestone closing a manual step and only automate creating + assigning the new milestones. |
So then let's close the milestone eagerly, manually, once all (main) release activities concluded? That would work for me as well. I just want to prevent that issues are moved unnoticed into a wrong milestone. |
I'll create a follow-up PR |
Regarding magic of checkbox, this is already how it works with renovate rebase, e.g. #4387 |
For renovate, it is clear what the expectation is, and is it the only interactable element in the issue body. The checkbox also feels like a workaround and is used instead of a button. For the release issue, we have 10s of checkboxes that do nothing, IMO it feels weird that one should be magic. |
Proposed Changes
This PR introduces 2 new actions. I tested these in a private repo to verify they work
ASSIGN_MILESTONE.yml
RELEASE_ISSUE.yml > createMilestone
closes #4311
Checklist
To ensure you provided everything we need to look at your PR:
@bpmn-io/sr
toolCloses {LINK_TO_ISSUE}
orRelated to {LINK_TO_ISSUE}