This issue is mostly to open discussions about the best way to go about automating part of the work done by the docs/enhancement teams.
krease is a small CLI that filters issues based on issues and milestones, then comment on them with a template as an example of something that could be automated. We could integrate something like this into prow or find an alternative and also broaden the scope of what can be automated.
Please, let me know what you think馃槉.
We probably can integrate this into krel. Do you have any thoughts on that @justaugustus?
@saschagrunert that sounds great! Should I join the release team meetings on of these days so that everyone can discuss on how to move further?
@saschagrunert that sounds great! Should I join the release team meetings on of these days so that everyone can discuss on how to move further?
Yeah that sounds good, feel free to put the item on the agenda for the next release engineering meeting: https://docs.google.com/document/d/16GqCjnEh86w8yADcrUylNoE1y1sqjIMYNC_gdk5WPSQ/edit#
It would be good if you could outline a process to automate in the meanwhile. :)
Hey @saschagrunert , Just to double-check, what is the date for the next release engineering meeting?
Hey @saschagrunert , Just to double-check, what is the date for the next release engineering meeting?
Hey, it's tomorrow January 19 at 3:30pm UTC.
Just dropping the reference to something related to krease an Enhancements Shadow, Harsha, from the 1.19 RT was working on:
https://github.com/harshanarayana/k8s-enhancements
If we end up having some automation on our interaction with GH during the course of the release cycle, we should also have a look at the above.
@palnabarun Yes it looks great! We could definitely combine efforts to work on automating parts of the release cycle.
It looks like that we can model a state machine around the usual deadlines from a release cycle perspective. In the first iterations we probably have to still manually sync the tracking sheet with the outputs of the tool. Later on we could think about an overall representation in markdown within k/sig-release.
After enhancements freeze
/hold k/website docs PR until k/k feature PR got mergeddev-1.xxLooks like that we need a representation (maybe via JSON?) to link the PRs from the different repositories k/k k/enhancements and k/website. How is this being done now? Via the tracking sheet?
Before placeholder deadline
Those reminders can be done easily via go templates and GITHUB_TOKENs.
After code freeze
Before docs ready for review deadline
Before Docs Final deadline
So, to me it looks like that the tool will be an auto-reminder tracking state machine between different repositories and PRs. If the overall process does not change that often, then putting the workflow into source code seems like a valuable addition to me.
@SomtochiAma can you please double-check if I did any understanding mistakes above? If not, then we can move forward and carve-out the more detailed technical aspects. :relaxed:
Linking the information if enhancements needs docs via a label at the tracking issue. (seems a manual step to me)
Yes. Ideally, the owner of the issue should place the label. The comment should say so.
Looks like that we need a representation (maybe via JSON?) to link the PRs from the different repositories k/k k/enhancements and k/website. How is this being done now? Via the tracking sheet?
Yes, Currently through a tracking sheet. We could also create a simple frontend? But the tracking sheet should still work with the tool (if we could use the Sheets API)
Note: Is this the workflow or did I miss anything?
Yes it is.
@saschagrunert This looks good! I think we can move forward.
Pinging @annajung in case she has any additions/improvements.
Yes, Currently through a tracking sheet. We could also create a simple frontend? But the tracking sheet should still work with the tool (if we could use the Sheets API)
Yes I think so. I thought about having a rendered markdown document within the sig-release repository some sort of read-only frontend.
If it should be more about a website, then we could think of deploying something via GitHub pages.
The most feature-rich solution would be an angular (or else) website like we have it for the release notes. But this is probably a solution with the highest efforts behind. :upside_down_face:
The most feature-rich solution would be an angular (or else) website like we have it for the release notes. But this is probably a solution with the highest efforts behind. 馃檭
This would probably be the best as the tracking sheets are sort of interactive but we could probably start with a read-only option. Adding the angular frontend could also be a nice project for Google Summer of Code / other mentorship programs where the efforts are defined and concentrated!
/assign @SomtochiAma
Sorry for the prolonged silence, I will get started on this.
We are still integrating with krel @saschagrunert right?
Sorry for the prolonged silence, I will get started on this.
We are still integrating with krel @saschagrunert right?
Yes I think this is still the best move forward. :blush:
@SomtochiAma, there is work being done by the enhancement subproject group where they are going to introduce a receipt process for the enhancements, which in short, will track the enhancements and all associated PRs in git. You can read more about it in the proposed kep.
I just wanted to bring that up because I think you can leverage or remove some of the tasks listed above since it may be solved by the receipt process.
For example,
Linking the information if enhancements needs docs via a label at the tracking issue. (seems a manual step to me)
I think we might want to add this as part of the receipt process instead of a separate process and that could help reduce the need of the docs release team pinging all enhancements owners if they need docs or not.
Another example, applying hold label
/hold k/website docs PR until k/k feature PR got merged
I think you can now get the list of PRs from the receipt which will contain the k/k and k/website PR information, this would definitely make it easier to get the correct list of PRs that would be used to label and unlabel hold for k/webiste. (This would only work if the proposed receipt process is being used and used as expected)
Can you take a look at the receipt process being proceeding any further? I think it may help reduce any duplicate work and solve some concerns that were raised before :)
Hey @annajung, Thanks for linking the KEP. I took a look and mostly what is going to change is how to get the list of issues / PR (KEP, k/k, k/w) which is great. But we probably don't want to put this work on hold waiting for the KEP to be accepted and implemented.
I think we can proceed with integration with krel bearing in mind that this change is coming and make it easier to switch from getting the data from the tracking sheet to some other mechanism. What do you think?
@SomtochiAma That works! I didn't want to put this work on hold, just wanted to make sure that you were aware of changes being made to how enhancements and all enhancements related PRs will be tracked in the future which will affect the work related to this issue.
Even though KEP has not merged yet, the plan is to start moving to the new receipt process starting 1.22, maybe not fully but at least partially.
I agree that this shouldn't be blocked by that though and can continue with the expectation that the source of data will change in the future. Thanks!
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
Most helpful comment
We probably can integrate this into
krel. Do you have any thoughts on that @justaugustus?