mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-08 11:38:15 +00:00
Merge pull request #127093 from jpbetz/retry-generate-name-ga
Promote RetryGenerateName to GA
This commit is contained in:
commit
1137a6a0cc
@ -1003,8 +1003,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
||||
|
||||
genericfeatures.ResilientWatchCacheInitialization: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
genericfeatures.RetryGenerateName: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
genericfeatures.SeparateCacheWatchRPC: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
genericfeatures.StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha},
|
||||
|
@ -438,4 +438,9 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
|
||||
KubeletRegistrationGetOnExistsOnly: {
|
||||
{Version: version.MustParse("1.32"), Default: false, PreRelease: featuregate.Deprecated},
|
||||
},
|
||||
genericfeatures.RetryGenerateName: {
|
||||
{Version: version.MustParse("1.30"), Default: false, PreRelease: featuregate.Alpha},
|
||||
{Version: version.MustParse("1.31"), Default: true, PreRelease: featuregate.Beta},
|
||||
{Version: version.MustParse("1.32"), Default: true, LockToDefault: true, PreRelease: featuregate.GA},
|
||||
},
|
||||
}
|
||||
|
@ -189,6 +189,7 @@ const (
|
||||
// owner: @jpbetz
|
||||
// alpha: v1.30
|
||||
// beta: v1.31
|
||||
// ga: v1.32
|
||||
// Resource create requests using generateName are retried automatically by the apiserver
|
||||
// if the generated name conflicts with an existing resource name, up to a maximum number of 7 retries.
|
||||
RetryGenerateName featuregate.Feature = "RetryGenerateName"
|
||||
@ -300,6 +301,11 @@ var defaultVersionedKubernetesFeatureGates = map[featuregate.Feature]featuregate
|
||||
{Version: version.MustParse("1.31"), Default: false, PreRelease: featuregate.Alpha},
|
||||
{Version: version.MustParse("1.32"), Default: true, PreRelease: featuregate.Beta},
|
||||
},
|
||||
RetryGenerateName: {
|
||||
{Version: version.MustParse("1.30"), Default: false, PreRelease: featuregate.Alpha},
|
||||
{Version: version.MustParse("1.31"), Default: true, PreRelease: featuregate.Beta},
|
||||
{Version: version.MustParse("1.32"), Default: true, LockToDefault: true, PreRelease: featuregate.GA},
|
||||
},
|
||||
}
|
||||
|
||||
// defaultKubernetesFeatureGates consists of all known Kubernetes-specific feature keys.
|
||||
@ -337,8 +343,6 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
||||
|
||||
ResilientWatchCacheInitialization: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
RetryGenerateName: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
SeparateCacheWatchRPC: {Default: true, PreRelease: featuregate.Beta},
|
||||
|
||||
StorageVersionAPI: {Default: false, PreRelease: featuregate.Alpha},
|
||||
|
@ -45,6 +45,7 @@ import (
|
||||
"k8s.io/apimachinery/pkg/selection"
|
||||
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
||||
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||
"k8s.io/apimachinery/pkg/util/version"
|
||||
"k8s.io/apimachinery/pkg/util/wait"
|
||||
"k8s.io/apiserver/pkg/apis/example"
|
||||
examplev1 "k8s.io/apiserver/pkg/apis/example/v1"
|
||||
@ -447,6 +448,8 @@ func TestStoreCreateWithRetryNameGenerate(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestStoreCreateWithRetryNameGenerateFeatureDisabled(t *testing.T) {
|
||||
// Preserve testing of disabled RetryGenerateName feature gate since it can still be disabled when emulation version is set.
|
||||
featuregatetesting.SetFeatureGateEmulationVersionDuringTest(t, utilfeature.DefaultFeatureGate, version.MustParse("1.31"))
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RetryGenerateName, false)
|
||||
namedObj := func(id int) *example.Pod {
|
||||
return &example.Pod{
|
||||
@ -2981,6 +2984,8 @@ func (p *predictableNameGenerator) GenerateName(base string) string {
|
||||
}
|
||||
|
||||
func TestStoreCreateGenerateNameConflict(t *testing.T) {
|
||||
// Preserve testing of disabled RetryGenerateName feature gate since it can still be disabled when emulation version is set.
|
||||
featuregatetesting.SetFeatureGateEmulationVersionDuringTest(t, utilfeature.DefaultFeatureGate, version.MustParse("1.31"))
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RetryGenerateName, false)
|
||||
|
||||
// podA will be stored with name foo12345
|
||||
|
@ -178,12 +178,6 @@
|
||||
lockToDefault: false
|
||||
preRelease: Beta
|
||||
version: ""
|
||||
- name: RetryGenerateName
|
||||
versionedSpecs:
|
||||
- default: true
|
||||
lockToDefault: false
|
||||
preRelease: Beta
|
||||
version: ""
|
||||
- name: SeparateCacheWatchRPC
|
||||
versionedSpecs:
|
||||
- default: true
|
||||
|
@ -706,6 +706,20 @@
|
||||
lockToDefault: false
|
||||
preRelease: Alpha
|
||||
version: "1.31"
|
||||
- name: RetryGenerateName
|
||||
versionedSpecs:
|
||||
- default: false
|
||||
lockToDefault: false
|
||||
preRelease: Alpha
|
||||
version: "1.30"
|
||||
- default: true
|
||||
lockToDefault: false
|
||||
preRelease: Beta
|
||||
version: "1.31"
|
||||
- default: true
|
||||
lockToDefault: true
|
||||
preRelease: GA
|
||||
version: "1.32"
|
||||
- name: RotateKubeletServerCertificate
|
||||
versionedSpecs:
|
||||
- default: false
|
||||
|
Loading…
Reference in New Issue
Block a user