mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-14 13:45:06 +00:00
Merge pull request #127171 from Jefftree/feature-gate-comment
Reorder kube_features to be alphabetical and add comment on where to add new feature
This commit is contained in:
@@ -38,13 +38,6 @@ const (
|
|||||||
// of code conflicts because changes are more likely to be scattered
|
// of code conflicts because changes are more likely to be scattered
|
||||||
// across the file.
|
// across the file.
|
||||||
|
|
||||||
// owner: @ttakahashi21 @mkimuram
|
|
||||||
// kep: https://kep.k8s.io/3294
|
|
||||||
// alpha: v1.26
|
|
||||||
//
|
|
||||||
// Enable usage of Provision of PVCs from snapshots in other namespaces
|
|
||||||
CrossNamespaceVolumeDataSource featuregate.Feature = "CrossNamespaceVolumeDataSource"
|
|
||||||
|
|
||||||
// owner: @aojea
|
// owner: @aojea
|
||||||
// Deprecated: v1.31
|
// Deprecated: v1.31
|
||||||
//
|
//
|
||||||
@@ -178,6 +171,13 @@ const (
|
|||||||
// Set the scheduled time as an annotation in the job.
|
// Set the scheduled time as an annotation in the job.
|
||||||
CronJobsScheduledAnnotation featuregate.Feature = "CronJobsScheduledAnnotation"
|
CronJobsScheduledAnnotation featuregate.Feature = "CronJobsScheduledAnnotation"
|
||||||
|
|
||||||
|
// owner: @ttakahashi21 @mkimuram
|
||||||
|
// kep: https://kep.k8s.io/3294
|
||||||
|
// alpha: v1.26
|
||||||
|
//
|
||||||
|
// Enable usage of Provision of PVCs from snapshots in other namespaces
|
||||||
|
CrossNamespaceVolumeDataSource featuregate.Feature = "CrossNamespaceVolumeDataSource"
|
||||||
|
|
||||||
// owner: @elezar
|
// owner: @elezar
|
||||||
// kep: http://kep.k8s.io/4009
|
// kep: http://kep.k8s.io/4009
|
||||||
// alpha: v1.28
|
// alpha: v1.28
|
||||||
@@ -954,17 +954,12 @@ func init() {
|
|||||||
clientfeatures.ReplaceFeatureGates(ca)
|
clientfeatures.ReplaceFeatureGates(ca)
|
||||||
}
|
}
|
||||||
|
|
||||||
// defaultKubernetesFeatureGates consists of all known Kubernetes-specific feature keys.
|
// defaultKubernetesFeatureGates consists of legacy unversioned Kubernetes-specific feature keys.
|
||||||
// To add a new feature, define a key for it above and add it here. The features will be
|
// Please do not add to this file and use pkg/features/versioned_kube_features.go instead.
|
||||||
// available throughout Kubernetes binaries.
|
|
||||||
//
|
//
|
||||||
// Entries are separated from each other with blank lines to avoid sweeping gofmt changes
|
// Entries are separated from each other with blank lines to avoid sweeping gofmt changes
|
||||||
// when adding or removing one entry.
|
// when adding or removing one entry.
|
||||||
var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{
|
var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureSpec{
|
||||||
AllowDNSOnlyNodeCSR: {Default: false, PreRelease: featuregate.Deprecated}, // remove after 1.33
|
|
||||||
|
|
||||||
DisableNodeKubeProxyVersion: {Default: false, PreRelease: featuregate.Deprecated}, // default on in 1.33
|
|
||||||
|
|
||||||
// inherited features from generic apiserver, relisted here to get a conflict if it is changed
|
// inherited features from generic apiserver, relisted here to get a conflict if it is changed
|
||||||
// unintentionally on either side:
|
// unintentionally on either side:
|
||||||
|
|
||||||
@@ -1047,8 +1042,12 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
// ...
|
// ...
|
||||||
HPAScaleToZero: {Default: false, PreRelease: featuregate.Alpha},
|
HPAScaleToZero: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
|
AllowDNSOnlyNodeCSR: {Default: false, PreRelease: featuregate.Deprecated}, // remove after 1.33
|
||||||
|
|
||||||
AllowInsecureKubeletCertificateSigningRequests: {Default: false, PreRelease: featuregate.Deprecated}, // remove in 1.33
|
AllowInsecureKubeletCertificateSigningRequests: {Default: false, PreRelease: featuregate.Deprecated}, // remove in 1.33
|
||||||
|
|
||||||
|
DisableNodeKubeProxyVersion: {Default: false, PreRelease: featuregate.Deprecated}, // default on in 1.33
|
||||||
|
|
||||||
StorageNamespaceIndex: {Default: true, PreRelease: featuregate.Beta},
|
StorageNamespaceIndex: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
|
||||||
RecursiveReadOnlyMounts: {Default: true, PreRelease: featuregate.Beta},
|
RecursiveReadOnlyMounts: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
@@ -23,15 +23,16 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
// defaultVersionedKubernetesFeatureGates consists of all known Kubernetes-specific feature keys with VersionedSpecs.
|
// defaultVersionedKubernetesFeatureGates consists of all known Kubernetes-specific feature keys with VersionedSpecs.
|
||||||
// To add a new feature, define a key for it and add it here. The features will be
|
// To add a new feature, define a key for it in pkg/features/kube_features.go and add it here. The features will be
|
||||||
// available throughout Kubernetes binaries.
|
// available throughout Kubernetes binaries.
|
||||||
|
// For features available via specific kubernetes components like apiserver,
|
||||||
|
// cloud-controller-manager, etc find the respective kube_features.go file
|
||||||
|
// (eg:staging/src/apiserver/pkg/features/kube_features.go), define the versioned
|
||||||
|
// feature gate there, and reference it in this file.
|
||||||
|
// To support n-3 compatibility version, features may only be removed 3 releases after graduation.
|
||||||
//
|
//
|
||||||
// Entries are alphabetized and separated from each other with blank lines to avoid sweeping gofmt changes
|
// Entries are alphabetized.
|
||||||
// when adding or removing one entry.
|
|
||||||
var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate.VersionedSpecs{
|
var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate.VersionedSpecs{
|
||||||
CrossNamespaceVolumeDataSource: {
|
|
||||||
{Version: version.MustParse("1.26"), Default: false, PreRelease: featuregate.Alpha},
|
|
||||||
},
|
|
||||||
AnyVolumeDataSource: {
|
AnyVolumeDataSource: {
|
||||||
{Version: version.MustParse("1.18"), Default: false, PreRelease: featuregate.Alpha},
|
{Version: version.MustParse("1.18"), Default: false, PreRelease: featuregate.Alpha},
|
||||||
{Version: version.MustParse("1.24"), Default: true, PreRelease: featuregate.Beta},
|
{Version: version.MustParse("1.24"), Default: true, PreRelease: featuregate.Beta},
|
||||||
@@ -86,6 +87,9 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
|
|||||||
CronJobsScheduledAnnotation: {
|
CronJobsScheduledAnnotation: {
|
||||||
{Version: version.MustParse("1.28"), Default: true, PreRelease: featuregate.Beta},
|
{Version: version.MustParse("1.28"), Default: true, PreRelease: featuregate.Beta},
|
||||||
},
|
},
|
||||||
|
CrossNamespaceVolumeDataSource: {
|
||||||
|
{Version: version.MustParse("1.26"), Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
},
|
||||||
DevicePluginCDIDevices: {
|
DevicePluginCDIDevices: {
|
||||||
{Version: version.MustParse("1.28"), Default: false, PreRelease: featuregate.Alpha},
|
{Version: version.MustParse("1.28"), Default: false, PreRelease: featuregate.Alpha},
|
||||||
{Version: version.MustParse("1.29"), Default: true, PreRelease: featuregate.Beta},
|
{Version: version.MustParse("1.29"), Default: true, PreRelease: featuregate.Beta},
|
||||||
|
Reference in New Issue
Block a user