Skip to content
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

Define Tekton LTS policy #2746

Closed
bobcatfish opened this issue Jun 3, 2020 · 16 comments
Closed

Define Tekton LTS policy #2746

bobcatfish opened this issue Jun 3, 2020 · 16 comments
Labels
kind/misc Categorizes issue or PR as a miscellaneuous one. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@bobcatfish
Copy link
Collaborator

In the productivity working group a few weeks back we discussed what it would take to release more frequently.

One big blocker is that having a large gap between releases means that we are more likely to backport fixes to a previous release and have patch releases, which at the moment we really only do for the release before the current one.

If we were to release more frequently (imagine every 2 weeks or every week) previous releases wouldn't necessarily get fixes and to get the fixes, folks would have to adopt newer versions which would include new features, which they might want to do.

It seems like we might be at the point where it would make sense for us to define our policy more clearly and be more judicious about backporting fixes.

Strawman suggestion: we will backport bug fixes to releases which have occurred within the last 3 months of when the fix was made.

@bobcatfish bobcatfish added the kind/misc Categorizes issue or PR as a miscellaneuous one. label Jun 3, 2020
@ghost
Copy link

ghost commented Jun 4, 2020

Strawman suggestion: we will backport bug fixes to releases which have occurred within the last 3 months of when the fix was made.

Responding to the strawman, this makes me very nervous but I might be misunderstanding the intended scheduling? The way I'm reading this right now: If we move to a weekly release cadence we'd have, minimum, 12 releases to backport fixes to at a given time (3 months = 12 weeks = 12 releases)? Even if our release process were cut to 30 minutes of work (right now a single release can span anything from a couple hours to a full day, depending on the patch and the state of the target version) that would still be 6 hours of concentrated work to backport into those 12 releases and we'd have some really tough problems around validating those 12 backports. Am I totally misunderstanding?

"LTS", to me, implies one blessed version that is given an extended lifetime. E.g. Ubuntu LTS defines a two-year cadence for LTS releases but they have a six-month cadence for their latest-and-greatests. Would this model work for Tekton? E.g. we could call version 1.0 an LTS that will receive bugfixes for a year or two and we'd also have weekly releases that offer new features and those same bugfixes (which are not backported anywhere but the current LTS).

I may be completely off-base here though?

@vdemeester
Copy link
Member

If we move to a weekly release cadence we'd have, minimum, 12 releases to backport fixes to at a given time (3 months = 12 weeks = 12 releases)?

Backport fixes should only be on the LTS releases to reduce the workload. Doing backport fixes on weekly release would counter the benefit of doing those weekly release for sure.

"LTS", to me, implies one blessed version that is given an extended lifetime. E.g. Ubuntu LTS defines a two-year cadence for LTS releases but they have a six-month cadence for their latest-and-greatests. Would this model work for Tekton? E.g. we could call version 1.0 an LTS that will receive bugfixes for a year or two and we'd also have weekly releases that offer new features and those same bugfixes (which are not backported anywhere but the current LTS).

I may be completely off-base here though?

Indeed that could be the case. 1.0 would be a LTS and receive bugfixes for a year. During that year we could have another one (at 6month for ex.) to be re-considered as LTS, etc… The question are then :

  • how often do we want to declare a LTS (roughtly, like Ubuntu does "after 3 releases", …) ? The timeframe between two LTS has to be really thought through : too often and it's a lot of burden for maintenance, not ofter enough and user will lag behind (and integrators too) — as my feeling is most integrators will release based on LTS, and most user will use LTS version as it is safer.
  • when do we want to start doing that ?

@afrittoli
Copy link
Member

afrittoli commented Jun 4, 2020 via email

@afrittoli
Copy link
Member

afrittoli commented Jun 4, 2020

Visibility of nightly releases: tektoncd/plumbing#407

@bobcatfish
Copy link
Collaborator Author

ah kk, I didn't realize that the practice was to designated certain releases only as LTS (though I think @dlorenc has tried to explain this to me before) - that makes this much easier :D

@tekton-robot
Copy link
Collaborator

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

/close

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link
Collaborator

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.

/lifecycle rotten

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link
Collaborator

@tekton-robot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

/close

Send feedback to tektoncd/plumbing.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot tekton-robot added the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 14, 2020
@vdemeester
Copy link
Member

/remove-lifecycle rotten
/remove-lifecycle stale
/reopen

@tekton-robot
Copy link
Collaborator

@vdemeester: Reopened this issue.

In response to this:

/remove-lifecycle rotten
/remove-lifecycle stale
/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot tekton-robot reopened this Aug 17, 2020
@tekton-robot tekton-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 17, 2020
@tekton-robot
Copy link
Collaborator

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.

/lifecycle stale

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 15, 2020
@vdemeester
Copy link
Member

/remove-lifecycle stale

@tekton-robot tekton-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 16, 2020
@tekton-robot
Copy link
Collaborator

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale with a justification.
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 with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/lifecycle stale

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Feb 14, 2021
@bobcatfish
Copy link
Collaborator Author

ooo this is a good one - i think im gonna add it to the draft roadmap for 2021. we haven't gotten a chance to look into this specifically but we've been talking about how to coordinate release across projects

/lifecycle frozen

@tekton-robot tekton-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Feb 16, 2021
@vdemeester
Copy link
Member

@afrittoli I think this might be closeable ?

@afrittoli
Copy link
Member

Yes, I think so - there may be a little work to be done in terms of testing tektoncd/plumbing#1288 - but the policy is there, and the releases too.

Repository owner moved this from Todo to Done in Tekton Community Roadmap Nov 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/misc Categorizes issue or PR as a miscellaneuous one. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
Status: Done
Development

No branches or pull requests

5 participants