mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-26 05:03:09 +00:00
remove GA featuregates: CSIInlineVolume, CSIMigration, DaemonSetUpdateSurge, EphemeralContainers, IdentifyPodOS, LocalStorageCapacityIsolation, NetworkPolicyEndPort, StatefulSetMinReadySeconds
This commit is contained in:
parent
47d58265ae
commit
4c60ee00aa
@ -108,21 +108,6 @@ const (
|
|||||||
// Allow the usage of options to fine-tune the cpumanager policies.
|
// Allow the usage of options to fine-tune the cpumanager policies.
|
||||||
CPUManagerPolicyOptions featuregate.Feature = "CPUManagerPolicyOptions"
|
CPUManagerPolicyOptions featuregate.Feature = "CPUManagerPolicyOptions"
|
||||||
|
|
||||||
// owner: @pohly
|
|
||||||
// alpha: v1.14
|
|
||||||
// beta: v1.16
|
|
||||||
// GA: v1.25
|
|
||||||
//
|
|
||||||
// Enables CSI Inline volumes support for pods
|
|
||||||
CSIInlineVolume featuregate.Feature = "CSIInlineVolume"
|
|
||||||
|
|
||||||
// owner: @davidz627
|
|
||||||
// alpha: v1.14
|
|
||||||
// beta: v1.17
|
|
||||||
//
|
|
||||||
// Enables the in-tree storage to CSI Plugin migration feature.
|
|
||||||
CSIMigration featuregate.Feature = "CSIMigration"
|
|
||||||
|
|
||||||
// owner: @leakingtapan
|
// owner: @leakingtapan
|
||||||
// alpha: v1.14
|
// alpha: v1.14
|
||||||
// beta: v1.17
|
// beta: v1.17
|
||||||
@ -223,13 +208,6 @@ const (
|
|||||||
// Enables support for time zones in CronJobs.
|
// Enables support for time zones in CronJobs.
|
||||||
CronJobTimeZone featuregate.Feature = "CronJobTimeZone"
|
CronJobTimeZone featuregate.Feature = "CronJobTimeZone"
|
||||||
|
|
||||||
// owner: @smarterclayton
|
|
||||||
// alpha: v1.21
|
|
||||||
// beta: v1.22
|
|
||||||
// GA: v1.25
|
|
||||||
// DaemonSets allow workloads to maintain availability during update per node
|
|
||||||
DaemonSetUpdateSurge featuregate.Feature = "DaemonSetUpdateSurge"
|
|
||||||
|
|
||||||
// owner: @gnufied, @verult, @bertinatto
|
// owner: @gnufied, @verult, @bertinatto
|
||||||
// alpha: v1.22
|
// alpha: v1.22
|
||||||
// beta: v1.23
|
// beta: v1.23
|
||||||
@ -291,14 +269,6 @@ const (
|
|||||||
// Enable Terminating condition in Endpoint Slices.
|
// Enable Terminating condition in Endpoint Slices.
|
||||||
EndpointSliceTerminatingCondition featuregate.Feature = "EndpointSliceTerminatingCondition"
|
EndpointSliceTerminatingCondition featuregate.Feature = "EndpointSliceTerminatingCondition"
|
||||||
|
|
||||||
// owner: @verb
|
|
||||||
// alpha: v1.16
|
|
||||||
// beta: v1.23
|
|
||||||
// GA: v1.25
|
|
||||||
//
|
|
||||||
// Allows running an ephemeral container in pod namespaces to troubleshoot a running pod.
|
|
||||||
EphemeralContainers featuregate.Feature = "EphemeralContainers"
|
|
||||||
|
|
||||||
// owner: @harche
|
// owner: @harche
|
||||||
// kep: http://kep.k8s.io/3386
|
// kep: http://kep.k8s.io/3386
|
||||||
// alpha: v1.25
|
// alpha: v1.25
|
||||||
@ -391,14 +361,6 @@ const (
|
|||||||
// deletion ordering.
|
// deletion ordering.
|
||||||
HonorPVReclaimPolicy featuregate.Feature = "HonorPVReclaimPolicy"
|
HonorPVReclaimPolicy featuregate.Feature = "HonorPVReclaimPolicy"
|
||||||
|
|
||||||
// owner: @ravig
|
|
||||||
// alpha: v1.23
|
|
||||||
// beta: v1.24
|
|
||||||
// GA: v1.25
|
|
||||||
// IdentifyPodOS allows user to specify OS on which they'd like the Pod run. The user should still set the nodeSelector
|
|
||||||
// with appropriate `kubernetes.io/os` label for scheduler to identify appropriate node for the pod to run.
|
|
||||||
IdentifyPodOS featuregate.Feature = "IdentifyPodOS"
|
|
||||||
|
|
||||||
// owner: @leakingtapan
|
// owner: @leakingtapan
|
||||||
// alpha: v1.21
|
// alpha: v1.21
|
||||||
//
|
//
|
||||||
@ -539,13 +501,6 @@ const (
|
|||||||
// Enables tracking of secret-based service account tokens usage.
|
// Enables tracking of secret-based service account tokens usage.
|
||||||
LegacyServiceAccountTokenTracking featuregate.Feature = "LegacyServiceAccountTokenTracking"
|
LegacyServiceAccountTokenTracking featuregate.Feature = "LegacyServiceAccountTokenTracking"
|
||||||
|
|
||||||
// owner: @jinxu
|
|
||||||
// beta: v1.10
|
|
||||||
// stable: v1.25
|
|
||||||
//
|
|
||||||
// Support local ephemeral storage types for local storage capacity isolation feature.
|
|
||||||
LocalStorageCapacityIsolation featuregate.Feature = "LocalStorageCapacityIsolation"
|
|
||||||
|
|
||||||
// owner: @RobertKrawitz
|
// owner: @RobertKrawitz
|
||||||
// alpha: v1.15
|
// alpha: v1.15
|
||||||
//
|
//
|
||||||
@ -617,15 +572,6 @@ const (
|
|||||||
// Enables the MultiCIDR Range allocator.
|
// Enables the MultiCIDR Range allocator.
|
||||||
MultiCIDRRangeAllocator featuregate.Feature = "MultiCIDRRangeAllocator"
|
MultiCIDRRangeAllocator featuregate.Feature = "MultiCIDRRangeAllocator"
|
||||||
|
|
||||||
// owner: @rikatz
|
|
||||||
// kep: https://kep.k8s.io/2079
|
|
||||||
// alpha: v1.21
|
|
||||||
// beta: v1.22
|
|
||||||
// ga: v1.25
|
|
||||||
//
|
|
||||||
// Enables the endPort field in NetworkPolicy to enable a Port Range behavior in Network Policies.
|
|
||||||
NetworkPolicyEndPort featuregate.Feature = "NetworkPolicyEndPort"
|
|
||||||
|
|
||||||
// owner: @rikatz
|
// owner: @rikatz
|
||||||
// kep: https://kep.k8s.io/2943
|
// kep: https://kep.k8s.io/2943
|
||||||
// alpha: v1.24
|
// alpha: v1.24
|
||||||
@ -796,14 +742,6 @@ const (
|
|||||||
// Enables policies controlling deletion of PVCs created by a StatefulSet.
|
// Enables policies controlling deletion of PVCs created by a StatefulSet.
|
||||||
StatefulSetAutoDeletePVC featuregate.Feature = "StatefulSetAutoDeletePVC"
|
StatefulSetAutoDeletePVC featuregate.Feature = "StatefulSetAutoDeletePVC"
|
||||||
|
|
||||||
// owner: @ravig
|
|
||||||
// kep: https://kep.k8s.io/2607
|
|
||||||
// alpha: v1.22
|
|
||||||
// beta: v1.23
|
|
||||||
// GA: v1.25
|
|
||||||
// StatefulSetMinReadySeconds allows minReadySeconds to be respected by StatefulSet controller
|
|
||||||
StatefulSetMinReadySeconds featuregate.Feature = "StatefulSetMinReadySeconds"
|
|
||||||
|
|
||||||
// owner: @psch
|
// owner: @psch
|
||||||
// alpha: v1.26
|
// alpha: v1.26
|
||||||
//
|
//
|
||||||
@ -939,10 +877,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
CPUManagerPolicyOptions: {Default: true, PreRelease: featuregate.Beta},
|
CPUManagerPolicyOptions: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
|
||||||
CSIInlineVolume: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
CSIMigration: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
CSIMigrationAWS: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
CSIMigrationAWS: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
||||||
|
|
||||||
CSIMigrationAzureDisk: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.26
|
CSIMigrationAzureDisk: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.26
|
||||||
@ -971,8 +905,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
CronJobTimeZone: {Default: true, PreRelease: featuregate.Beta},
|
CronJobTimeZone: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
|
||||||
DaemonSetUpdateSurge: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
DelegateFSGroupToCSIDriver: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.28
|
DelegateFSGroupToCSIDriver: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.28
|
||||||
|
|
||||||
DevicePlugins: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // GA in 1.26
|
DevicePlugins: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // GA in 1.26
|
||||||
@ -989,8 +921,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
DynamicResourceAllocation: {Default: false, PreRelease: featuregate.Alpha},
|
DynamicResourceAllocation: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
EphemeralContainers: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
EventedPLEG: {Default: false, PreRelease: featuregate.Alpha},
|
EventedPLEG: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
ExecProbeTimeout: {Default: true, PreRelease: featuregate.GA}, // lock to default and remove after v1.22 based on KEP #1972 update
|
ExecProbeTimeout: {Default: true, PreRelease: featuregate.GA}, // lock to default and remove after v1.22 based on KEP #1972 update
|
||||||
@ -1015,8 +945,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
HonorPVReclaimPolicy: {Default: false, PreRelease: featuregate.Alpha},
|
HonorPVReclaimPolicy: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
IdentifyPodOS: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
InTreePluginAWSUnregister: {Default: false, PreRelease: featuregate.Alpha},
|
InTreePluginAWSUnregister: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
InTreePluginAzureDiskUnregister: {Default: false, PreRelease: featuregate.Alpha},
|
InTreePluginAzureDiskUnregister: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
@ -1057,8 +985,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
LegacyServiceAccountTokenTracking: {Default: false, PreRelease: featuregate.Alpha},
|
LegacyServiceAccountTokenTracking: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
LocalStorageCapacityIsolation: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
LocalStorageCapacityIsolationFSQuotaMonitoring: {Default: false, PreRelease: featuregate.Alpha},
|
LocalStorageCapacityIsolationFSQuotaMonitoring: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
LogarithmicScaleDown: {Default: true, PreRelease: featuregate.Beta},
|
LogarithmicScaleDown: {Default: true, PreRelease: featuregate.Beta},
|
||||||
@ -1079,8 +1005,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
MultiCIDRRangeAllocator: {Default: false, PreRelease: featuregate.Alpha},
|
MultiCIDRRangeAllocator: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
NetworkPolicyEndPort: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
NetworkPolicyStatus: {Default: false, PreRelease: featuregate.Alpha},
|
NetworkPolicyStatus: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
NodeOutOfServiceVolumeDetach: {Default: true, PreRelease: featuregate.Beta},
|
NodeOutOfServiceVolumeDetach: {Default: true, PreRelease: featuregate.Beta},
|
||||||
@ -1127,8 +1051,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
StatefulSetAutoDeletePVC: {Default: false, PreRelease: featuregate.Alpha},
|
StatefulSetAutoDeletePVC: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
StatefulSetMinReadySeconds: {Default: true, PreRelease: featuregate.GA, LockToDefault: true}, // remove in 1.27
|
|
||||||
|
|
||||||
StatefulSetStartOrdinal: {Default: false, PreRelease: featuregate.Alpha},
|
StatefulSetStartOrdinal: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
TopologyAwareHints: {Default: true, PreRelease: featuregate.Beta},
|
TopologyAwareHints: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
@ -287,8 +287,6 @@ func TestMemoryPressure_VerifyPodStatus(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestDiskPressureNodeFs_VerifyPodStatus(t *testing.T) {
|
func TestDiskPressureNodeFs_VerifyPodStatus(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.LocalStorageCapacityIsolation, true)()
|
|
||||||
|
|
||||||
testCases := map[string]struct {
|
testCases := map[string]struct {
|
||||||
wantPodStatus v1.PodStatus
|
wantPodStatus v1.PodStatus
|
||||||
}{
|
}{
|
||||||
@ -652,8 +650,6 @@ func parseQuantity(value string) resource.Quantity {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestDiskPressureNodeFs(t *testing.T) {
|
func TestDiskPressureNodeFs(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.LocalStorageCapacityIsolation, true)()
|
|
||||||
|
|
||||||
podMaker := makePodWithDiskStats
|
podMaker := makePodWithDiskStats
|
||||||
summaryStatsMaker := makeDiskStats
|
summaryStatsMaker := makeDiskStats
|
||||||
podsToMake := []podToMake{
|
podsToMake := []podToMake{
|
||||||
@ -989,8 +985,6 @@ func TestMinReclaim(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestNodeReclaimFuncs(t *testing.T) {
|
func TestNodeReclaimFuncs(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.LocalStorageCapacityIsolation, true)()
|
|
||||||
|
|
||||||
podMaker := makePodWithDiskStats
|
podMaker := makePodWithDiskStats
|
||||||
summaryStatsMaker := makeDiskStats
|
summaryStatsMaker := makeDiskStats
|
||||||
podsToMake := []podToMake{
|
podsToMake := []podToMake{
|
||||||
|
@ -30,11 +30,8 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/api/resource"
|
"k8s.io/apimachinery/pkg/api/resource"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
|
||||||
featuregatetesting "k8s.io/component-base/featuregate/testing"
|
|
||||||
statsapi "k8s.io/kubelet/pkg/apis/stats/v1alpha1"
|
statsapi "k8s.io/kubelet/pkg/apis/stats/v1alpha1"
|
||||||
|
|
||||||
"k8s.io/kubernetes/pkg/features"
|
|
||||||
evictionapi "k8s.io/kubernetes/pkg/kubelet/eviction/api"
|
evictionapi "k8s.io/kubernetes/pkg/kubelet/eviction/api"
|
||||||
kubetypes "k8s.io/kubernetes/pkg/kubelet/types"
|
kubetypes "k8s.io/kubernetes/pkg/kubelet/types"
|
||||||
)
|
)
|
||||||
@ -815,7 +812,6 @@ func TestOrderedbyDisk(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestOrderedbyInodes(t *testing.T) {
|
func TestOrderedbyInodes(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.LocalStorageCapacityIsolation, true)()
|
|
||||||
low := newPod("low", defaultPriority, []v1.Container{
|
low := newPod("low", defaultPriority, []v1.Container{
|
||||||
newContainer("low", newResourceList("", "", ""), newResourceList("", "", "")),
|
newContainer("low", newResourceList("", "", ""), newResourceList("", "", "")),
|
||||||
}, []v1.Volume{
|
}, []v1.Volume{
|
||||||
@ -858,7 +854,6 @@ func TestOrderedbyInodes(t *testing.T) {
|
|||||||
|
|
||||||
// TestOrderedByPriorityDisk ensures we order pods by priority and then greediest resource consumer
|
// TestOrderedByPriorityDisk ensures we order pods by priority and then greediest resource consumer
|
||||||
func TestOrderedByPriorityDisk(t *testing.T) {
|
func TestOrderedByPriorityDisk(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.LocalStorageCapacityIsolation, true)()
|
|
||||||
pod1 := newPod("above-requests-low-priority-high-usage", lowPriority, []v1.Container{
|
pod1 := newPod("above-requests-low-priority-high-usage", lowPriority, []v1.Container{
|
||||||
newContainer("above-requests-low-priority-high-usage", newResourceList("", "", ""), newResourceList("", "", "")),
|
newContainer("above-requests-low-priority-high-usage", newResourceList("", "", ""), newResourceList("", "", "")),
|
||||||
}, []v1.Volume{
|
}, []v1.Volume{
|
||||||
|
Loading…
Reference in New Issue
Block a user