From 6f4b8da9a30869b3216a7ee525cbdf6e23316dd5 Mon Sep 17 00:00:00 2001 From: Lee Verberne Date: Fri, 1 Oct 2021 17:22:23 +0200 Subject: [PATCH] Promote EphemeralContainers feature to beta --- pkg/apis/core/types.go | 6 +++--- pkg/features/kube_features.go | 3 ++- staging/src/k8s.io/api/core/v1/types.go | 6 +++--- test/e2e_node/ephemeral_containers_test.go | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/pkg/apis/core/types.go b/pkg/apis/core/types.go index 62ea4c0c0df..b3283c98313 100644 --- a/pkg/apis/core/types.go +++ b/pkg/apis/core/types.go @@ -2749,7 +2749,7 @@ type PodSpec struct { // pod to perform user-initiated actions such as debugging. This list cannot be specified when // creating a pod, and it cannot be modified by updating the pod spec. In order to add an // ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource. - // This field is alpha-level and is only honored by servers that enable the EphemeralContainers feature. + // This field is beta-level and available on clusters that haven't disabled the EphemeralContainers feature gate. // +optional EphemeralContainers []EphemeralContainer // +optional @@ -3188,7 +3188,7 @@ var _ = Container(EphemeralContainerCommon{}) // Ephemeral containers may not be added by directly updating the pod spec. They must be added // via the pod's ephemeralcontainers subresource, and they will appear in the pod spec // once added. -// This is an alpha feature enabled by the EphemeralContainers feature flag. +// This is a beta feature available on clusters that haven't disabled the EphemeralContainers feature gate. type EphemeralContainer struct { // Ephemeral containers have all of the fields of Container, plus additional fields // specific to ephemeral containers. Fields in common with Container are in the @@ -3253,7 +3253,7 @@ type PodStatus struct { ContainerStatuses []ContainerStatus // Status for any ephemeral containers that have run in this pod. - // This field is alpha-level and is only honored by servers that enable the EphemeralContainers feature. + // This field is beta-level and available on clusters that haven't disabled the EphemeralContainers feature gate. // +optional EphemeralContainerStatuses []ContainerStatus } diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index 3fdf0752dde..ffca75ad102 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -94,6 +94,7 @@ const ( // owner: @verb // alpha: v1.16 + // beta: v1.23 // // Allows running an ephemeral container in pod namespaces to troubleshoot a running pod. EphemeralContainers featuregate.Feature = "EphemeralContainers" @@ -791,7 +792,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS DevicePlugins: {Default: true, PreRelease: featuregate.Beta}, RotateKubeletServerCertificate: {Default: true, PreRelease: featuregate.Beta}, LocalStorageCapacityIsolation: {Default: true, PreRelease: featuregate.Beta}, - EphemeralContainers: {Default: false, PreRelease: featuregate.Alpha}, + EphemeralContainers: {Default: true, PreRelease: featuregate.Beta}, QOSReserved: {Default: false, PreRelease: featuregate.Alpha}, ExpandPersistentVolumes: {Default: true, PreRelease: featuregate.Beta}, ExpandInUsePersistentVolumes: {Default: true, PreRelease: featuregate.Beta}, diff --git a/staging/src/k8s.io/api/core/v1/types.go b/staging/src/k8s.io/api/core/v1/types.go index f0fa732281b..2f6f80ce418 100644 --- a/staging/src/k8s.io/api/core/v1/types.go +++ b/staging/src/k8s.io/api/core/v1/types.go @@ -2995,7 +2995,7 @@ type PodSpec struct { // pod to perform user-initiated actions such as debugging. This list cannot be specified when // creating a pod, and it cannot be modified by updating the pod spec. In order to add an // ephemeral container to an existing pod, use the pod's ephemeralcontainers subresource. - // This field is alpha-level and is only honored by servers that enable the EphemeralContainers feature. + // This field is beta-level and available on clusters that haven't disabled the EphemeralContainers feature gate. // +optional // +patchMergeKey=name // +patchStrategy=merge @@ -3582,7 +3582,7 @@ var _ = Container(EphemeralContainerCommon{}) // Ephemeral containers may not be added by directly updating the pod spec. They must be added // via the pod's ephemeralcontainers subresource, and they will appear in the pod spec // once added. -// This is an alpha feature enabled by the EphemeralContainers feature flag. +// This is a beta feature available on clusters that haven't disabled the EphemeralContainers feature gate. type EphemeralContainer struct { // Ephemeral containers have all of the fields of Container, plus additional fields // specific to ephemeral containers. Fields in common with Container are in the @@ -3683,7 +3683,7 @@ type PodStatus struct { // +optional QOSClass PodQOSClass `json:"qosClass,omitempty" protobuf:"bytes,9,rep,name=qosClass"` // Status for any ephemeral containers that have run in this pod. - // This field is alpha-level and is only populated by servers that enable the EphemeralContainers feature. + // This field is beta-level and available on clusters that haven't disabled the EphemeralContainers feature gate. // +optional EphemeralContainerStatuses []ContainerStatus `json:"ephemeralContainerStatuses,omitempty" protobuf:"bytes,13,rep,name=ephemeralContainerStatuses"` } diff --git a/test/e2e_node/ephemeral_containers_test.go b/test/e2e_node/ephemeral_containers_test.go index bf3d756f1d7..db52e96667f 100644 --- a/test/e2e_node/ephemeral_containers_test.go +++ b/test/e2e_node/ephemeral_containers_test.go @@ -27,7 +27,7 @@ import ( "github.com/onsi/ginkgo" ) -var _ = SIGDescribe("Ephemeral Containers [Feature:EphemeralContainers][NodeAlphaFeature:EphemeralContainers]", func() { +var _ = SIGDescribe("Ephemeral Containers", func() { f := framework.NewDefaultFramework("ephemeral-containers-test") var podClient *framework.PodClient ginkgo.BeforeEach(func() {