-
Notifications
You must be signed in to change notification settings - Fork 552
WIP: Create release governance definition #1812
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
Conversation
This PR failed 2 out of 2 times with 6 individual failed tests and 4 skipped tests. A test is considered flaky if failed on multiple commits. totaltestcount: 2
|
Suggestion: When we review these RFE's and don't yet accept them as valid, consider using a tag such as |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
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.
Thanks for putting this together @kevinrizza
I think my thoughts differ on how much weight we need to put into an individual release and how much the core OLM folks need to be involved. I think we should let the upstream process go in its own direction and not apply a lot of policy to the release cycle. Let's discuss this more in our feature planning meeting.
The Operator Lifecycle Manager project is part of the Operator Framework. As a result, it's community membership guidelines adhere to the definitions defined in the Operator Framework's [community membership definition](https://github.com/operator-framework/community/blob/master/community-membership.md). For the purpose of this document, there are two roles that are relevant for the release schedule. | ||
|
||
- Project reviewers provide guidance on whether or not a release is ready. Before a release can be cut, we will require that two reviewers provide the `/lgtm` label to the release. | ||
- Project approvers provide the final approval on whether or not a release is ready to be cut. A quorum (greater than 50%) of the project's approvers need to agree that a release is ready by writing the `/approve` label to the release. |
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 seems like a lot of people to simply cut a minor release version, no? We're talking about 5 people at a minimum. If the number of approvers grows by 1, then a quorum would be 4 which means 6 people total. Seems like a lot of coordination for a go/no-go on a release.
Do we really need so much review for the upstream community to cut a release? We want more frequent releases and for upstream members to be able to release on an accelerated schedule. I would think 2 lgtms
and 1 approve
would suffice? With the goal of the upstream community members being able to cut their own releases eventually with a different set of owners
|
||
### Minor Releases | ||
When a minor release is ready to be generated, a github issue will be filed against the project containing preliminary release notes. At that time, it should be labeled with the milestone expected for that release. Once that issue is opened, it needs approval from two reviewers and a majority of project approvers before the release can be scheduled. Additionally, at the same time, an email will be sent out to the operator framework mailing list with a link to the release notes in the issue. At that time, there is a minimum of a 48 hour comment period before the release can be completed. | ||
|
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.
What's the value of the 48 hour comment period besides just slowing down the release process once its been approved? I can understand sending out the email but cutting a new release seems like safe operation, not potentially contentious like an enhancement, is there really a freeze period required?
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.
Will commenters be able to argue against cutting a release in the comment period? I think it makes sense to have some time for everyone to review the release before it goes out, but that I think that should be before the github issue gets approved.
### Cadence | ||
The high level objective for Operator Lifecycle Manager releases is to release a minor version on a 3 month cadence | ||
|
||
- Minor releases alongside the current Kubernetes release schedule |
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.
Maybe the upstream project can have more frequent releases? The kube release cycle mirrors the downstream OCP release cycle, which is fine, but having more frequent releases cut when new features make it into upstream could be another way to go
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: exdx, kevinrizza The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
02370a0
to
48afff0
Compare
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: exdx, kevinrizza The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
d3db1ae
to
f581cbc
Compare
f581cbc
to
81e3dec
Compare
Hello, This repository contains a number of PRs that have been open for an excessively long period of time, in some cases these PRs have been open for more than two years. In an effort to improve the health of our project, we are closing PRs that haven't been updated in the past 30 days or include features that we do not wish to adopt. This PR has been identified as a candidate meeting the requirements above and will be closed. If you believe that this PR should still be merged, please reopen the PR and explain why. We will eventually release an official policy detailing our process for handling "stale" PRs and issues. If you would like to be involved in the conversation, please engage through this Issue. Thanks you, Alex |
Initial release governance doc intended to codify the project's release process and schedule