diff --git a/pkg/features/kube_features.go b/pkg/features/kube_features.go index 2d2f486bed8..3a15ced22ab 100644 --- a/pkg/features/kube_features.go +++ b/pkg/features/kube_features.go @@ -356,6 +356,7 @@ const ( // owner: @tallclair // alpha: v1.12 + // beta: v1.14 // // Enables RuntimeClass, for selecting between multiple runtimes to run a pod. RuntimeClass utilfeature.Feature = "RuntimeClass" @@ -498,7 +499,7 @@ var defaultKubernetesFeatureGates = map[utilfeature.Feature]utilfeature.FeatureS ResourceQuotaScopeSelectors: {Default: true, PreRelease: utilfeature.Beta}, CSIBlockVolume: {Default: true, PreRelease: utilfeature.Beta}, CSIInlineVolume: {Default: false, PreRelease: utilfeature.Alpha}, - RuntimeClass: {Default: false, PreRelease: utilfeature.Alpha}, + RuntimeClass: {Default: true, PreRelease: utilfeature.Beta}, NodeLease: {Default: true, PreRelease: utilfeature.Beta}, SCTPSupport: {Default: false, PreRelease: utilfeature.Alpha}, VolumeSnapshotDataSource: {Default: false, PreRelease: utilfeature.Alpha}, diff --git a/plugin/pkg/auth/authorizer/rbac/bootstrappolicy/testdata/cluster-roles.yaml b/plugin/pkg/auth/authorizer/rbac/bootstrappolicy/testdata/cluster-roles.yaml index 357546a8c0f..3cb0d018d68 100644 --- a/plugin/pkg/auth/authorizer/rbac/bootstrappolicy/testdata/cluster-roles.yaml +++ b/plugin/pkg/auth/authorizer/rbac/bootstrappolicy/testdata/cluster-roles.yaml @@ -1023,6 +1023,14 @@ items: - get - patch - update + - apiGroups: + - node.k8s.io + resources: + - runtimeclasses + verbs: + - get + - list + - watch - apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: diff --git a/test/e2e/node/runtimeclass.go b/test/e2e/node/runtimeclass.go index 5e5d4cde127..d062854feb1 100644 --- a/test/e2e/node/runtimeclass.go +++ b/test/e2e/node/runtimeclass.go @@ -34,7 +34,7 @@ import ( . "github.com/onsi/ginkgo" ) -var _ = SIGDescribe("RuntimeClass [Feature:RuntimeClass]", func() { +var _ = SIGDescribe("RuntimeClass", func() { f := framework.NewDefaultFramework("runtimeclass") It("should reject a Pod requesting a non-existent RuntimeClass", func() { @@ -43,12 +43,6 @@ var _ = SIGDescribe("RuntimeClass [Feature:RuntimeClass]", func() { expectSandboxFailureEvent(f, pod, fmt.Sprintf("\"%s\" not found", rcName)) }) - It("should run a Pod requesting a RuntimeClass with an empty handler", func() { - rcName := createRuntimeClass(f, "empty-handler", "") - pod := createRuntimeClassPod(f, rcName) - expectPodSuccess(f, pod) - }) - It("should reject a Pod requesting a RuntimeClass with an unconfigured handler", func() { handler := f.Namespace.Name + "-handler" rcName := createRuntimeClass(f, "unconfigured-handler", handler) @@ -57,7 +51,7 @@ var _ = SIGDescribe("RuntimeClass [Feature:RuntimeClass]", func() { }) It("should reject a Pod requesting a deleted RuntimeClass", func() { - rcName := createRuntimeClass(f, "delete-me", "") + rcName := createRuntimeClass(f, "delete-me", "runc") rcClient := f.ClientSet.NodeV1beta1().RuntimeClasses() By("Deleting RuntimeClass "+rcName, func() {