mirror of
https://github.com/kubernetes/client-go.git
synced 2025-08-11 04:01:42 +00:00
Merge pull request #122571 from p0lyn0mial/upstream-client-go-watch-list-fg
client-go/features: introduce WatchListClient feature gate Kubernetes-commit: 026a27e5eb431c553d1204817cbf09f1005eca9b
This commit is contained in:
commit
b13c4f4b00
@ -141,9 +141,3 @@ var (
|
|||||||
// should use AddFeaturesToExistingFeatureGates followed by ReplaceFeatureGates.
|
// should use AddFeaturesToExistingFeatureGates followed by ReplaceFeatureGates.
|
||||||
featureGates = &atomic.Value{}
|
featureGates = &atomic.Value{}
|
||||||
)
|
)
|
||||||
|
|
||||||
// defaultKubernetesFeatureGates consists of all known Kubernetes-specific feature keys.
|
|
||||||
//
|
|
||||||
// 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[Feature]FeatureSpec{}
|
|
||||||
|
49
features/known_features.go
Normal file
49
features/known_features.go
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2024 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package features
|
||||||
|
|
||||||
|
const (
|
||||||
|
// Every feature gate should add method here following this template:
|
||||||
|
//
|
||||||
|
// // owner: @username
|
||||||
|
// // alpha: v1.4
|
||||||
|
// MyFeature featuregate.Feature = "MyFeature"
|
||||||
|
//
|
||||||
|
// Feature gates should be listed in alphabetical, case-sensitive
|
||||||
|
// (upper before any lower case character) order. This reduces the risk
|
||||||
|
// of code conflicts because changes are more likely to be scattered
|
||||||
|
// across the file.
|
||||||
|
|
||||||
|
// owner: @p0lyn0mial
|
||||||
|
// beta: v1.30
|
||||||
|
//
|
||||||
|
// Allow the client to get a stream of individual items instead of chunking from the server.
|
||||||
|
//
|
||||||
|
// NOTE:
|
||||||
|
// The feature is disabled in Beta by default because
|
||||||
|
// it will only be turned on for selected control plane component(s).
|
||||||
|
WatchListClient Feature = "WatchListClient"
|
||||||
|
)
|
||||||
|
|
||||||
|
// defaultKubernetesFeatureGates consists of all known Kubernetes-specific feature keys.
|
||||||
|
//
|
||||||
|
// To add a new feature, define a key for it above and add it here.
|
||||||
|
// After registering with the binary, the features are, by default, controllable using environment variables.
|
||||||
|
// For more details, please see envVarFeatureGates implementation.
|
||||||
|
var defaultKubernetesFeatureGates = map[Feature]FeatureSpec{
|
||||||
|
WatchListClient: {Default: false, PreRelease: Beta},
|
||||||
|
}
|
4
go.mod
4
go.mod
@ -24,7 +24,7 @@ require (
|
|||||||
golang.org/x/term v0.15.0
|
golang.org/x/term v0.15.0
|
||||||
golang.org/x/time v0.3.0
|
golang.org/x/time v0.3.0
|
||||||
google.golang.org/protobuf v1.31.0
|
google.golang.org/protobuf v1.31.0
|
||||||
k8s.io/api v0.0.0-20240111211838-39c80441f814
|
k8s.io/api v0.0.0-20240114225744-c9c2aecc731b
|
||||||
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d
|
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d
|
||||||
k8s.io/klog/v2 v2.120.0
|
k8s.io/klog/v2 v2.120.0
|
||||||
k8s.io/kube-openapi v0.0.0-20231113174909-778a5567bc1e
|
k8s.io/kube-openapi v0.0.0-20231113174909-778a5567bc1e
|
||||||
@ -61,6 +61,6 @@ require (
|
|||||||
)
|
)
|
||||||
|
|
||||||
replace (
|
replace (
|
||||||
k8s.io/api => k8s.io/api v0.0.0-20240111211838-39c80441f814
|
k8s.io/api => k8s.io/api v0.0.0-20240114225744-c9c2aecc731b
|
||||||
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d
|
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d
|
||||||
)
|
)
|
||||||
|
4
go.sum
4
go.sum
@ -157,8 +157,8 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
|||||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
k8s.io/api v0.0.0-20240111211838-39c80441f814 h1:w+YEku14/5m9DIMFpUc18gIT7kd/1XnNpuRkel34p34=
|
k8s.io/api v0.0.0-20240114225744-c9c2aecc731b h1:P4NQ7C/VCZXHN3HQh5/Xd5eNqwzh9o22d8GMzU2r2IU=
|
||||||
k8s.io/api v0.0.0-20240111211838-39c80441f814/go.mod h1:gd8eHKGEAgKEJvMyjMHG88jdPdPbUS/GKULUOrS7+EU=
|
k8s.io/api v0.0.0-20240114225744-c9c2aecc731b/go.mod h1:gd8eHKGEAgKEJvMyjMHG88jdPdPbUS/GKULUOrS7+EU=
|
||||||
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d h1:3/zPMR6GopaaAWJTZvob/eJ3uujM6vYgB5Hf7y1gg3s=
|
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d h1:3/zPMR6GopaaAWJTZvob/eJ3uujM6vYgB5Hf7y1gg3s=
|
||||||
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d/go.mod h1:TZi5dqCSETF0//y9r5QGBxc7W2udb08uXh6atA++S6Q=
|
k8s.io/apimachinery v0.0.0-20240111211623-02a41040d88d/go.mod h1:TZi5dqCSETF0//y9r5QGBxc7W2udb08uXh6atA++S6Q=
|
||||||
k8s.io/klog/v2 v2.120.0 h1:z+q5mfovBj1fKFxiRzsa2DsJLPIVMk/KFL81LMOfK+8=
|
k8s.io/klog/v2 v2.120.0 h1:z+q5mfovBj1fKFxiRzsa2DsJLPIVMk/KFL81LMOfK+8=
|
||||||
|
Loading…
Reference in New Issue
Block a user