-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
feat: promote StepActions to GA #8546
base: main
Are you sure you want to change the base?
feat: promote StepActions to GA #8546
Conversation
Skipping CI for Draft Pull Request. |
/kind feature |
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.
Do we have any TEP documents or checklists to determine if the feature meets beta maturity?
ed246ea
to
405e8ed
Compare
cc @vdemeester |
@waveywaves: The following test failed, say
Full PR test history. Your PR dashboard. 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. I understand the commands that are listed here. |
95ffb3a
to
845dd31
Compare
845dd31
to
a45de74
Compare
a45de74
to
d4a5306
Compare
d4a5306
to
3fa0ffa
Compare
72f3927
to
0ed96bf
Compare
The following is the coverage report on the affected files.
|
cc @tektoncd/core-maintainers |
/retest |
7c01a01
to
8ccc964
Compare
The following is the coverage report on the affected files.
|
a22d418
to
42db76e
Compare
1583b50
to
f28f988
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.
🎉
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jerop, l-qing, vdemeester 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 |
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 @waveywaves for this!
I'm currently reviewing this, I'm confused by the changes in feature_flags.go
but probably because I'm not familiar with the latest version of the code.
Let me spend a few more minutes digging into this and I'll finish my review
enable-api-fields: "beta" | ||
enable-step-actions: "true" |
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.
If it's enabled by default, why does it have to be enabled in beta?
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 had added this in the very beginning to debug why e2e tests weren't passing. What you are saying is right, ideally, this should not be here. Removed enable-step-actions: "true"
from here. Thanks for catching this!
Stability: BetaAPIFields, | ||
Enabled: DefaultBetaFeatureEnabled, | ||
Stability: StableAPIFields, | ||
Enabled: DefaultStableFeatureEnabled, |
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 re-read TEP-0138 and the docs associated with it.
As far as I understand, the implementation is a bit "brittle" from the code point of view; it's all left to the feature developer to follow guidelines. This map populates the feature flags store when a configMap
is not found, which is probably only for tests. Only the Enabled
field is also relevant from a configuration perspective. The Stability
field is there for "documentation purposes", i.e. to keep track of what feature is at which level of stability.
The documented feature promotion path is as follow:
- alpha, disabled by default
- beta, disabled by default
- stable, enabled by default
This is reflected by the constants:
// Features of "alpha" stability level are disabled by default
DefaultAlphaFeatureEnabled = false
// Features of "beta" stability level are disabled by default
DefaultBetaFeatureEnabled = false
// Features of "stable" stability level are enabled by default
DefaultStableFeatureEnabled = true
This PR sets the documented feature level to "stable" in the code but leaves it to "beta" everywhere else in the docs. From the PR description, it looks like the intention was not to promote to "stable", but only enable by default.
However, that is invalid if the feature is still "beta", as it can only be enabled by default once it's stable.
/hold @waveywaves @vdemeester @jerop @JeromeJu I may be missing some context on this. If it was agreed to enable a beta feature by default, the exception should be documented in the release notes and context provided in the PR description. The If the intention was instead to promote this to stable, the user docs and release notes should be updated with this information. |
Hey Andrea, thank you for reviewing the PR
I will update the docs accordingly for this, I have missed that out cc @afrittoli |
cb53fff
to
eed5ab9
Compare
Upgrade StepActions feature from beta to stable to make sure that it is enabled by default. StepActions has been in beta for a while and is also has good adoption among the community. It is pretty stable as a feature based on the regular usage. Moving it to GA will make sure that users will have access to better pipeline composability from the get-go. The following changes were made: - set enable-step-actions to "true" by default - updated to reflect that StepActions are now enabled by default - changed the feature flag stability from BetaAPIFields to StableAPIFields in feature_flags.go - updated feature flags, e2e tests and test data - moved relevant examples to stable examples - added relevant documentation for the move from beta to stable This change makes StepActions a stable, first-class feature in Tekton Pipelines.
eed5ab9
to
84d38c5
Compare
Changes
fixes #8485
enable using StepActions out of the box for tekton-pipelines by promoting it to GA
Submitter Checklist
As the author of this PR, please check off the items in this checklist:
/kind <type>
. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tepRelease Notes