-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Add PRR questionnaire to KEP template, require for targeting #1620
Conversation
/assign @jeremyrickard @mrbobbytables |
keps/NNNN-kep-template/README.md
Outdated
- [ ] (R) Design details are appropriately documented | ||
- [ ] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input | ||
- [ ] (R) Graduation criteria is in place | ||
- [ ] (R) Production readiness review [questionnaire](production-readiness.md) completed and approved |
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.
One thing that is not clear for me is who is allowed to approve it. Do we fully delegate to KEP approvers?
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.
good point. I don't think so. we can use an OWNERs file with a regexp.
Process-wise, sig-scalability probably needs to approve the scalability section. In the PRR KEP we discuss a team similar to API review team. Perhaps we need to implement that before merging this.
@@ -0,0 +1,139 @@ | |||
# Production Readiness Review Questionnaire |
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.
Given you move it here, we probably should remove it from the community repo, to avoid maintaining the same thing in two different places.
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.
Yes, that's the plan. Different repo though so it will be a separate PR.
/hold for my review @johnbelamaric -- On an initial glance, I'm wondering if there's a good reason for the PRR to not just be a section in the README. Apologies if I'm lacking context from another conversation. |
@justaugustus that was the initial thought, but I split it out for two reasons: 1) it is long; 2) it should have a separate set of approvers. But that latter process is ill defined at the moment. |
I think this is fine, especially if it means that there will be more eyes on the PRR section.
Having a separate approver set is impossible today with the way OWNERS work. We could have the PRR approver added to approvers:
- "@johnbelamaric" # PRR Approver |
Ok, for some reason I was thinking we could do regexp for file names in OWNERS files. Not sure where I got that idea... I don't want to move it to its own directory either. I think your suggestion is good, I'll update the PR. |
7df41bf
to
b431299
Compare
Ok, I added it directly, and also mentioned that it needs a PRR approver. But we should hold this until all that is set up. |
keps/NNNN-kep-template/README.md
Outdated
cause increased failures in production. See more in the PRR KEP at | ||
https://git.k8s.io/enhancements/keps/sig-architecture/20190731-production-readiness-review-process.md | ||
|
||
The KEP must have a approver from the PRR review team. |
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.
Regarding the tooling, I have no idea how the existing tooling works, so I may be completely wrong, but I think it hopefully should be a small thing to do. How I envision this to work is:
- add another PRR_OWNERS file (or extend the existing one - thanks @johnbelamaric for this thought) [we can probably start with just top-level one
- introduce prr-approved label (naming to be done) based on /prr-approve comment from PRR_OWNERS (hopefully that's only a matter of configuring existing tooling?)
- change tide for this repo to require both approve and prr-approve labels?
As @johnbelamaric pointed out we will probably need to also auto-assign prr-approvers. Though I think that as a first step we can probably ask sig-leads (who are the only approvers for now) to add someone manually.
The remaining thing is that not every PR should require PRR-review. But OTOH, those trivial ones will probably be easy to review and will not add significant overhead.
@spiffxp @cblecker - does that above makes any sense from the tooling perspective? How much work would it be to make that happen? [If you're not the right people to answer, can you route it to the right ones?]
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.
I'm not sure I'm a fan of a coding something specifically into prow for this purpose. I agree we're seeing cases for more flexible review/approval workflows than what we support right now, but it's unclear what the right path forward is, and nobody has improving this as a priority. Need some time to think about this. @cjwagner @fejta do you have any ideas?
A mechanism you could try to use today is to force KEPs going to release to use a directory based approach (I'm not clear if that's the standard now or if we're still putting everything in one file), put the PRR in subdir of the KEP, and use a no_parent_owners directive + approves to restrict approval of the PRR to your team/alias.
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.
That OWNERS file will be created by the KEP author - can we somehow enforce that it will be added and will have the no-parent stuff?
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.
We can definitely add something as a presubmit to enforce this!
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.
I'd agree with @spiffxp that no_parent_owners is favorable over creating a new workflow here.
I updated this based on @wojtek-t 's changes to the PRR questionnaire. I think we can merge this as-is, with these follow ups needed:
|
a cloud provider API, or upon an external software-defined storage or network | ||
control plane. | ||
|
||
For each of the fill in the following, thinking both about running user workloads |
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.
missing noun?
this seems like an overall improvement for gating features with respect to quality control, so thank you @johnbelamaric and the PRR project for adding this to the template. i did early reviews of this work but lost the trail later. one minor complain that i have, after trying to fill the answers in a WIP KEP is that the majority of the questions are not really applicable to e.g. a new i guess in such cases there must be some sort a default answer, so i just went with "Not applicable" in a few places, but still trying to clarify "why". something else is that possibly some of the details next to questions could have been commented out thanks. |
For each of them fill in the following information by copying the below template: | ||
- [Failure mode brief description] | ||
- Detection: How can it be detected via metrics? Stated another way: | ||
how can an operator troubleshoot without loogging into a master or worker node? |
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.
typo in loogging
see-also: | ||
- "/keps/sig-aaa/1234-we-heard-you-like-keps" | ||
- "/keps/sig-bbb/2345-everyone-gets-a-kep" | ||
replaces: | ||
- "/keps/sig-ccc/3456-replaced-kep" | ||
|
||
# The target maturity stage in the current dev cycle for this KEP. | ||
stage: alpha|beta|stable |
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.
there is no such field in the Proposals
structure, causing kepval
/ make verify
to fail:
https://github.com/kubernetes/enhancements/blob/master/pkg/kepval/keps/proposals.go#L49-L76
looks like the template itself is not validated.
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.
this has since been fixed, thanks
OCPEDGE-1147: feat!: init kubesan csi driver integration proposal
This PR adds the PRR questionnaire as a formal part of the KEP, and makes it required when targeting the enhancement at a release.
A follow up PR in k/community will remove the questionnaire from there and point folks here.
/sig architecture
/sig release
/assign @wojtek-t @deads2k @justaugustus