Add feature gate CustomResourceValidationExpressions

Kubernetes-commit: 117ef89d2bb4f4bf907280c1c67a12b35e2152df
This commit is contained in:
cici37 2021-09-17 12:43:27 -07:00 committed by Kubernetes Publisher
parent 282d7fd7f9
commit a7d4ad2f8f
1 changed files with 27 additions and 19 deletions

View File

@ -178,6 +178,13 @@ const (
// Enables populating "enum" field of OpenAPI schemas // Enables populating "enum" field of OpenAPI schemas
// in the spec returned from kube-apiserver. // in the spec returned from kube-apiserver.
OpenAPIEnums featuregate.Feature = "OpenAPIEnums" OpenAPIEnums featuregate.Feature = "OpenAPIEnums"
// owner: @cici37
// kep: http://kep.k8s.io/2876
// alpha: v1.23
//
// Enables expression validation for Custom Resource
CustomResourceValidationExpressions featuregate.Feature = "CustomResourceValidationExpressions"
) )
func init() { func init() {
@ -188,23 +195,24 @@ func init() {
// To add a new feature, define a key for it above and add it here. The features will be // To add a new feature, define a key for it above and add it here. The features will be
// available throughout Kubernetes binaries. // available throughout Kubernetes binaries.
var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{
StreamingProxyRedirects: {Default: false, PreRelease: featuregate.Deprecated}, StreamingProxyRedirects: {Default: false, PreRelease: featuregate.Deprecated},
ValidateProxyRedirects: {Default: true, PreRelease: featuregate.Deprecated}, ValidateProxyRedirects: {Default: true, PreRelease: featuregate.Deprecated},
AdvancedAuditing: {Default: true, PreRelease: featuregate.GA}, AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
APIResponseCompression: {Default: true, PreRelease: featuregate.Beta}, APIResponseCompression: {Default: true, PreRelease: featuregate.Beta},
APIListChunking: {Default: true, PreRelease: featuregate.Beta}, APIListChunking: {Default: true, PreRelease: featuregate.Beta},
DryRun: {Default: true, PreRelease: featuregate.GA}, DryRun: {Default: true, PreRelease: featuregate.GA},
RemainingItemCount: {Default: true, PreRelease: featuregate.Beta}, RemainingItemCount: {Default: true, PreRelease: featuregate.Beta},
ServerSideApply: {Default: true, PreRelease: featuregate.GA}, ServerSideApply: {Default: true, PreRelease: featuregate.GA},
StorageVersionHash: {Default: true, PreRelease: featuregate.Beta}, StorageVersionHash: {Default: true, PreRelease: featuregate.Beta},
StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha}, StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha},
WatchBookmark: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, WatchBookmark: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
APIPriorityAndFairness: {Default: true, PreRelease: featuregate.Beta}, APIPriorityAndFairness: {Default: true, PreRelease: featuregate.Beta},
RemoveSelfLink: {Default: true, PreRelease: featuregate.Beta}, RemoveSelfLink: {Default: true, PreRelease: featuregate.Beta},
SelectorIndex: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, SelectorIndex: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
WarningHeaders: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, WarningHeaders: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
EfficientWatchResumption: {Default: true, PreRelease: featuregate.Beta}, EfficientWatchResumption: {Default: true, PreRelease: featuregate.Beta},
APIServerIdentity: {Default: false, PreRelease: featuregate.Alpha}, APIServerIdentity: {Default: false, PreRelease: featuregate.Alpha},
APIServerTracing: {Default: false, PreRelease: featuregate.Alpha}, APIServerTracing: {Default: false, PreRelease: featuregate.Alpha},
OpenAPIEnums: {Default: false, PreRelease: featuregate.Alpha}, OpenAPIEnums: {Default: false, PreRelease: featuregate.Alpha},
CustomResourceValidationExpressions: {Default: false, PreRelease: featuregate.Alpha},
} }