Merge pull request #105107 from cici37/addFG

Add feature gate CustomResourceValidationExpressions

Kubernetes-commit: 6f47878926f1aa51e0864821d882bf695558709a
This commit is contained in:
Kubernetes Publisher 2021-09-29 08:08:48 -07:00
commit be50de95a2
3 changed files with 31 additions and 23 deletions

4
go.mod
View File

@ -46,7 +46,7 @@ require (
gopkg.in/square/go-jose.v2 v2.2.2
k8s.io/api v0.0.0-20210924234029-7036ead25397
k8s.io/apimachinery v0.0.0-20210920194645-86c0c0f8c8e2
k8s.io/client-go v0.0.0-20210927194320-b7ec70cb3372
k8s.io/client-go v0.0.0-20210929123603-fe0e5b13da25
k8s.io/component-base v0.0.0-20210921194550-26d1dd95ca3c
k8s.io/klog/v2 v2.20.0
k8s.io/kube-openapi v0.0.0-20210817084001-7fbd8d59e5b8
@ -59,6 +59,6 @@ require (
replace (
k8s.io/api => k8s.io/api v0.0.0-20210924234029-7036ead25397
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20210920194645-86c0c0f8c8e2
k8s.io/client-go => k8s.io/client-go v0.0.0-20210927194320-b7ec70cb3372
k8s.io/client-go => k8s.io/client-go v0.0.0-20210929123603-fe0e5b13da25
k8s.io/component-base => k8s.io/component-base v0.0.0-20210921194550-26d1dd95ca3c
)

4
go.sum
View File

@ -949,8 +949,8 @@ k8s.io/api v0.0.0-20210924234029-7036ead25397 h1:JaNZFi1NkZWSkzbQbOhR5JIH9zCUY3A
k8s.io/api v0.0.0-20210924234029-7036ead25397/go.mod h1:wyj7UIiindRSrWpl4OJqfk8C2m/1vxi8wpf9x8RwQMQ=
k8s.io/apimachinery v0.0.0-20210920194645-86c0c0f8c8e2 h1:MdB81XVh3V0ZnRKsg6KRpVSH90nw2XjN9JcK9NIWY7Q=
k8s.io/apimachinery v0.0.0-20210920194645-86c0c0f8c8e2/go.mod h1:CimYO7ypGwnQeTeoJQ8Jht0OVH2glTFHGy7xEhLj3sk=
k8s.io/client-go v0.0.0-20210927194320-b7ec70cb3372 h1:/HJeuNoKiYz1nIzcDhEJKlk4RNwSRIEhzCSnKYYkoBk=
k8s.io/client-go v0.0.0-20210927194320-b7ec70cb3372/go.mod h1:Bf/2pe2Aj1YzozuKfgEljjAKoucHb94ww5KjG27yDhY=
k8s.io/client-go v0.0.0-20210929123603-fe0e5b13da25 h1:0EJBsN6QQmdaCAfen3m8s5PM93e25zZu19lZ28IzeUw=
k8s.io/client-go v0.0.0-20210929123603-fe0e5b13da25/go.mod h1:Bf/2pe2Aj1YzozuKfgEljjAKoucHb94ww5KjG27yDhY=
k8s.io/component-base v0.0.0-20210921194550-26d1dd95ca3c h1:HHdTnGiJqrMgO+5oKsr6ybxvkz/M1NIgmkaTMWF6Xls=
k8s.io/component-base v0.0.0-20210921194550-26d1dd95ca3c/go.mod h1:8TBirLP9GfpjkVs7ELLWDFxTw5Lap0YN+vktjBANLDA=
k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=

View File

@ -178,6 +178,13 @@ const (
// Enables populating "enum" field of OpenAPI schemas
// in the spec returned from kube-apiserver.
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() {
@ -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
// available throughout Kubernetes binaries.
var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{
StreamingProxyRedirects: {Default: false, PreRelease: featuregate.Deprecated},
ValidateProxyRedirects: {Default: true, PreRelease: featuregate.Deprecated},
AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
APIResponseCompression: {Default: true, PreRelease: featuregate.Beta},
APIListChunking: {Default: true, PreRelease: featuregate.Beta},
DryRun: {Default: true, PreRelease: featuregate.GA},
RemainingItemCount: {Default: true, PreRelease: featuregate.Beta},
ServerSideApply: {Default: true, PreRelease: featuregate.GA},
StorageVersionHash: {Default: true, PreRelease: featuregate.Beta},
StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha},
WatchBookmark: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
APIPriorityAndFairness: {Default: true, PreRelease: featuregate.Beta},
RemoveSelfLink: {Default: true, PreRelease: featuregate.Beta},
SelectorIndex: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
WarningHeaders: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
EfficientWatchResumption: {Default: true, PreRelease: featuregate.Beta},
APIServerIdentity: {Default: false, PreRelease: featuregate.Alpha},
APIServerTracing: {Default: false, PreRelease: featuregate.Alpha},
OpenAPIEnums: {Default: false, PreRelease: featuregate.Alpha},
StreamingProxyRedirects: {Default: false, PreRelease: featuregate.Deprecated},
ValidateProxyRedirects: {Default: true, PreRelease: featuregate.Deprecated},
AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
APIResponseCompression: {Default: true, PreRelease: featuregate.Beta},
APIListChunking: {Default: true, PreRelease: featuregate.Beta},
DryRun: {Default: true, PreRelease: featuregate.GA},
RemainingItemCount: {Default: true, PreRelease: featuregate.Beta},
ServerSideApply: {Default: true, PreRelease: featuregate.GA},
StorageVersionHash: {Default: true, PreRelease: featuregate.Beta},
StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha},
WatchBookmark: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
APIPriorityAndFairness: {Default: true, PreRelease: featuregate.Beta},
RemoveSelfLink: {Default: true, PreRelease: featuregate.Beta},
SelectorIndex: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
WarningHeaders: {Default: true, PreRelease: featuregate.GA, LockToDefault: true},
EfficientWatchResumption: {Default: true, PreRelease: featuregate.Beta},
APIServerIdentity: {Default: false, PreRelease: featuregate.Alpha},
APIServerTracing: {Default: false, PreRelease: featuregate.Alpha},
OpenAPIEnums: {Default: false, PreRelease: featuregate.Alpha},
CustomResourceValidationExpressions: {Default: false, PreRelease: featuregate.Alpha},
}