mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-21 19:01:49 +00:00
Merge pull request #113735 from cici37/renameDir
Rename cel admission package and the feature gate to validatingadmissionpolicy
This commit is contained in:
commit
72a25b1772
@ -28,7 +28,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
utilvalidation "k8s.io/apimachinery/pkg/util/validation"
|
utilvalidation "k8s.io/apimachinery/pkg/util/validation"
|
||||||
"k8s.io/apimachinery/pkg/util/validation/field"
|
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||||
plugincel "k8s.io/apiserver/pkg/admission/plugin/cel"
|
plugincel "k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy"
|
||||||
"k8s.io/apiserver/pkg/cel"
|
"k8s.io/apiserver/pkg/cel"
|
||||||
"k8s.io/apiserver/pkg/util/webhook"
|
"k8s.io/apiserver/pkg/util/webhook"
|
||||||
"k8s.io/kubernetes/pkg/apis/admissionregistration"
|
"k8s.io/kubernetes/pkg/apis/admissionregistration"
|
||||||
|
@ -1134,7 +1134,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
genericfeatures.AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
|
genericfeatures.AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
|
||||||
|
|
||||||
genericfeatures.CELValidatingAdmission: {Default: false, PreRelease: featuregate.Alpha},
|
genericfeatures.ValidatingAdmissionPolicy: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
genericfeatures.CustomResourceValidationExpressions: {Default: true, PreRelease: featuregate.Beta},
|
genericfeatures.CustomResourceValidationExpressions: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ package options
|
|||||||
// This should probably be part of some configuration fed into the build for a
|
// This should probably be part of some configuration fed into the build for a
|
||||||
// given binary target.
|
// given binary target.
|
||||||
import (
|
import (
|
||||||
validatingpolicy "k8s.io/apiserver/pkg/admission/plugin/cel"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy"
|
||||||
// Admission policies
|
// Admission policies
|
||||||
"k8s.io/kubernetes/plugin/pkg/admission/admit"
|
"k8s.io/kubernetes/plugin/pkg/admission/admit"
|
||||||
"k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages"
|
"k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages"
|
||||||
@ -98,7 +98,7 @@ var AllOrderedPlugins = []string{
|
|||||||
// webhook, resourcequota, and deny plugins must go at the end
|
// webhook, resourcequota, and deny plugins must go at the end
|
||||||
|
|
||||||
mutatingwebhook.PluginName, // MutatingAdmissionWebhook
|
mutatingwebhook.PluginName, // MutatingAdmissionWebhook
|
||||||
validatingpolicy.PluginName, // ValidatingAdmissionPolicy
|
validatingadmissionpolicy.PluginName, // ValidatingAdmissionPolicy
|
||||||
validatingwebhook.PluginName, // ValidatingAdmissionWebhook
|
validatingwebhook.PluginName, // ValidatingAdmissionWebhook
|
||||||
resourcequota.PluginName, // ResourceQuota
|
resourcequota.PluginName, // ResourceQuota
|
||||||
deny.PluginName, // AlwaysDeny
|
deny.PluginName, // AlwaysDeny
|
||||||
@ -161,7 +161,7 @@ func DefaultOffAdmissionPlugins() sets.String {
|
|||||||
certsubjectrestriction.PluginName, // CertificateSubjectRestriction
|
certsubjectrestriction.PluginName, // CertificateSubjectRestriction
|
||||||
defaultingressclass.PluginName, // DefaultIngressClass
|
defaultingressclass.PluginName, // DefaultIngressClass
|
||||||
podsecurity.PluginName, // PodSecurity
|
podsecurity.PluginName, // PodSecurity
|
||||||
validatingpolicy.PluginName, // ValidatingAdmissionPolicy, only active when feature gate CELValidatingAdmission is enabled
|
validatingadmissionpolicy.PluginName, // ValidatingAdmissionPolicy, only active when feature gate ValidatingAdmissionPolicy is enabled
|
||||||
)
|
)
|
||||||
|
|
||||||
return sets.NewString(AllOrderedPlugins...).Difference(defaultOnPlugins)
|
return sets.NewString(AllOrderedPlugins...).Difference(defaultOnPlugins)
|
||||||
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@ -109,7 +109,7 @@ func (c *celAdmissionPlugin) SetDrainedNotification(stopCh <-chan struct{}) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (c *celAdmissionPlugin) InspectFeatureGates(featureGates featuregate.FeatureGate) {
|
func (c *celAdmissionPlugin) InspectFeatureGates(featureGates featuregate.FeatureGate) {
|
||||||
if featureGates.Enabled(features.CELValidatingAdmission) {
|
if featureGates.Enabled(features.ValidatingAdmissionPolicy) {
|
||||||
c.enabled = true
|
c.enabled = true
|
||||||
}
|
}
|
||||||
c.inspectedFeatureGates = true
|
c.inspectedFeatureGates = true
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@ -34,7 +34,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/apiserver/pkg/admission/initializer"
|
"k8s.io/apiserver/pkg/admission/initializer"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/internal/generic"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/internal/generic"
|
||||||
"k8s.io/apiserver/pkg/features"
|
"k8s.io/apiserver/pkg/features"
|
||||||
dynamicfake "k8s.io/client-go/dynamic/fake"
|
dynamicfake "k8s.io/client-go/dynamic/fake"
|
||||||
"k8s.io/client-go/informers"
|
"k8s.io/client-go/informers"
|
||||||
@ -249,13 +249,13 @@ func setupTestCommon(t *testing.T, compiler ValidatorCompiler, shouldStartInform
|
|||||||
fakeInformerFactory := informers.NewSharedInformerFactory(fakeClient, time.Second)
|
fakeInformerFactory := informers.NewSharedInformerFactory(fakeClient, time.Second)
|
||||||
featureGate := featuregate.NewFeatureGate()
|
featureGate := featuregate.NewFeatureGate()
|
||||||
err := featureGate.Add(map[featuregate.Feature]featuregate.FeatureSpec{
|
err := featureGate.Add(map[featuregate.Feature]featuregate.FeatureSpec{
|
||||||
features.CELValidatingAdmission: {
|
features.ValidatingAdmissionPolicy: {
|
||||||
Default: true, PreRelease: featuregate.Alpha}})
|
Default: true, PreRelease: featuregate.Alpha}})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// FIXME: handle error.
|
// FIXME: handle error.
|
||||||
panic("Unexpected error")
|
panic("Unexpected error")
|
||||||
}
|
}
|
||||||
err = featureGate.SetFromMap(map[string]bool{string(features.CELValidatingAdmission): true})
|
err = featureGate.SetFromMap(map[string]bool{string(features.ValidatingAdmissionPolicy): true})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
// FIXME: handle error.
|
// FIXME: handle error.
|
||||||
panic("Unexpected error.")
|
panic("Unexpected error.")
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"sync"
|
"sync"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"strings"
|
"strings"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@ -25,7 +25,7 @@ import (
|
|||||||
|
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
|
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/matching"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching"
|
||||||
|
|
||||||
"k8s.io/api/admissionregistration/v1alpha1"
|
"k8s.io/api/admissionregistration/v1alpha1"
|
||||||
k8serrors "k8s.io/apimachinery/pkg/api/errors"
|
k8serrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
@ -35,7 +35,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
celmetrics "k8s.io/apiserver/pkg/admission/cel"
|
celmetrics "k8s.io/apiserver/pkg/admission/cel"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/internal/generic"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/internal/generic"
|
||||||
"k8s.io/client-go/dynamic"
|
"k8s.io/client-go/dynamic"
|
||||||
"k8s.io/client-go/informers"
|
"k8s.io/client-go/informers"
|
||||||
"k8s.io/client-go/kubernetes"
|
"k8s.io/client-go/kubernetes"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@ -27,7 +27,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
celmetrics "k8s.io/apiserver/pkg/admission/cel"
|
celmetrics "k8s.io/apiserver/pkg/admission/cel"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/internal/generic"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/internal/generic"
|
||||||
"k8s.io/client-go/dynamic/dynamicinformer"
|
"k8s.io/client-go/dynamic/dynamicinformer"
|
||||||
"k8s.io/client-go/tools/cache"
|
"k8s.io/client-go/tools/cache"
|
||||||
)
|
)
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"k8s.io/api/admissionregistration/v1alpha1"
|
"k8s.io/api/admissionregistration/v1alpha1"
|
@ -39,7 +39,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
"k8s.io/apimachinery/pkg/watch"
|
"k8s.io/apimachinery/pkg/watch"
|
||||||
|
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/internal/generic"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/internal/generic"
|
||||||
|
|
||||||
clienttesting "k8s.io/client-go/testing"
|
clienttesting "k8s.io/client-go/testing"
|
||||||
"k8s.io/client-go/tools/cache"
|
"k8s.io/client-go/tools/cache"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"net/http"
|
"net/http"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
@ -34,7 +34,7 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel/matching"
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/webhook/generic"
|
"k8s.io/apiserver/pkg/admission/plugin/webhook/generic"
|
||||||
)
|
)
|
||||||
|
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package cel
|
package validatingadmissionpolicy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"strings"
|
"strings"
|
@ -93,7 +93,7 @@ const (
|
|||||||
// alpha: v1.26
|
// alpha: v1.26
|
||||||
//
|
//
|
||||||
// Enables expression validation in Admission Control
|
// Enables expression validation in Admission Control
|
||||||
CELValidatingAdmission featuregate.Feature = "CELValidatingAdmission"
|
ValidatingAdmissionPolicy featuregate.Feature = "ValidatingAdmissionPolicy"
|
||||||
|
|
||||||
// owner: @cici37
|
// owner: @cici37
|
||||||
// kep: https://kep.k8s.io/2876
|
// kep: https://kep.k8s.io/2876
|
||||||
@ -222,7 +222,7 @@ var defaultKubernetesFeatureGates = map[featuregate.Feature]featuregate.FeatureS
|
|||||||
|
|
||||||
AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
|
AdvancedAuditing: {Default: true, PreRelease: featuregate.GA},
|
||||||
|
|
||||||
CELValidatingAdmission: {Default: false, PreRelease: featuregate.Alpha},
|
ValidatingAdmissionPolicy: {Default: false, PreRelease: featuregate.Alpha},
|
||||||
|
|
||||||
CustomResourceValidationExpressions: {Default: true, PreRelease: featuregate.Beta},
|
CustomResourceValidationExpressions: {Default: true, PreRelease: featuregate.Beta},
|
||||||
|
|
||||||
|
@ -28,8 +28,8 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/apiserver/pkg/admission/initializer"
|
"k8s.io/apiserver/pkg/admission/initializer"
|
||||||
admissionmetrics "k8s.io/apiserver/pkg/admission/metrics"
|
admissionmetrics "k8s.io/apiserver/pkg/admission/metrics"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel"
|
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle"
|
"k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle"
|
||||||
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy"
|
||||||
mutatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/mutating"
|
mutatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/mutating"
|
||||||
validatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/validating"
|
validatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/validating"
|
||||||
apiserverapi "k8s.io/apiserver/pkg/apis/apiserver"
|
apiserverapi "k8s.io/apiserver/pkg/apis/apiserver"
|
||||||
@ -87,7 +87,7 @@ func NewAdmissionOptions() *AdmissionOptions {
|
|||||||
// admission plugins. The apiserver always runs the validating ones
|
// admission plugins. The apiserver always runs the validating ones
|
||||||
// after all the mutating ones, so their relative order in this list
|
// after all the mutating ones, so their relative order in this list
|
||||||
// doesn't matter.
|
// doesn't matter.
|
||||||
RecommendedPluginOrder: []string{lifecycle.PluginName, mutatingwebhook.PluginName, cel.PluginName, validatingwebhook.PluginName},
|
RecommendedPluginOrder: []string{lifecycle.PluginName, mutatingwebhook.PluginName, validatingadmissionpolicy.PluginName, validatingwebhook.PluginName},
|
||||||
DefaultOffPlugins: sets.NewString(),
|
DefaultOffPlugins: sets.NewString(),
|
||||||
}
|
}
|
||||||
server.RegisterAllAdmissionPlugins(options.Plugins)
|
server.RegisterAllAdmissionPlugins(options.Plugins)
|
||||||
|
@ -19,8 +19,8 @@ package server
|
|||||||
// This file exists to force the desired plugin implementations to be linked into genericapi pkg.
|
// This file exists to force the desired plugin implementations to be linked into genericapi pkg.
|
||||||
import (
|
import (
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/cel"
|
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle"
|
"k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle"
|
||||||
|
"k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy"
|
||||||
mutatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/mutating"
|
mutatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/mutating"
|
||||||
validatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/validating"
|
validatingwebhook "k8s.io/apiserver/pkg/admission/plugin/webhook/validating"
|
||||||
)
|
)
|
||||||
@ -30,5 +30,5 @@ func RegisterAllAdmissionPlugins(plugins *admission.Plugins) {
|
|||||||
lifecycle.Register(plugins)
|
lifecycle.Register(plugins)
|
||||||
validatingwebhook.Register(plugins)
|
validatingwebhook.Register(plugins)
|
||||||
mutatingwebhook.Register(plugins)
|
mutatingwebhook.Register(plugins)
|
||||||
cel.Register(plugins)
|
validatingadmissionpolicy.Register(plugins)
|
||||||
}
|
}
|
||||||
|
@ -166,7 +166,7 @@ func Test_ValidateNamespace_NoParams(t *testing.T) {
|
|||||||
|
|
||||||
for _, testcase := range testcases {
|
for _, testcase := range testcases {
|
||||||
t.Run(testcase.name, func(t *testing.T) {
|
t.Run(testcase.name, func(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.CELValidatingAdmission, true)()
|
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.ValidatingAdmissionPolicy, true)()
|
||||||
server, err := apiservertesting.StartTestServer(t, nil, []string{
|
server, err := apiservertesting.StartTestServer(t, nil, []string{
|
||||||
"--enable-admission-plugins", "ValidatingAdmissionPolicy",
|
"--enable-admission-plugins", "ValidatingAdmissionPolicy",
|
||||||
}, framework.SharedEtcd())
|
}, framework.SharedEtcd())
|
||||||
@ -270,7 +270,7 @@ func Test_ValidateNamespace_WithConfigMapParams(t *testing.T) {
|
|||||||
|
|
||||||
for _, testcase := range testcases {
|
for _, testcase := range testcases {
|
||||||
t.Run(testcase.name, func(t *testing.T) {
|
t.Run(testcase.name, func(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.CELValidatingAdmission, true)()
|
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.ValidatingAdmissionPolicy, true)()
|
||||||
server, err := apiservertesting.StartTestServer(t, nil, []string{
|
server, err := apiservertesting.StartTestServer(t, nil, []string{
|
||||||
"--enable-admission-plugins", "ValidatingAdmissionPolicy",
|
"--enable-admission-plugins", "ValidatingAdmissionPolicy",
|
||||||
}, framework.SharedEtcd())
|
}, framework.SharedEtcd())
|
||||||
@ -327,7 +327,7 @@ func Test_ValidateNamespace_WithConfigMapParams(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestMultiplePolicyBindings(t *testing.T) {
|
func TestMultiplePolicyBindings(t *testing.T) {
|
||||||
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.CELValidatingAdmission, true)()
|
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, genericfeatures.ValidatingAdmissionPolicy, true)()
|
||||||
server, err := apiservertesting.StartTestServer(t, nil, nil, framework.SharedEtcd())
|
server, err := apiservertesting.StartTestServer(t, nil, nil, framework.SharedEtcd())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
|
6
vendor/modules.txt
vendored
6
vendor/modules.txt
vendored
@ -1436,9 +1436,6 @@ k8s.io/apiserver/pkg/admission/cel
|
|||||||
k8s.io/apiserver/pkg/admission/configuration
|
k8s.io/apiserver/pkg/admission/configuration
|
||||||
k8s.io/apiserver/pkg/admission/initializer
|
k8s.io/apiserver/pkg/admission/initializer
|
||||||
k8s.io/apiserver/pkg/admission/metrics
|
k8s.io/apiserver/pkg/admission/metrics
|
||||||
k8s.io/apiserver/pkg/admission/plugin/cel
|
|
||||||
k8s.io/apiserver/pkg/admission/plugin/cel/internal/generic
|
|
||||||
k8s.io/apiserver/pkg/admission/plugin/cel/matching
|
|
||||||
k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle
|
k8s.io/apiserver/pkg/admission/plugin/namespace/lifecycle
|
||||||
k8s.io/apiserver/pkg/admission/plugin/resourcequota
|
k8s.io/apiserver/pkg/admission/plugin/resourcequota
|
||||||
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota
|
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota
|
||||||
@ -1447,6 +1444,9 @@ k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1
|
|||||||
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1alpha1
|
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1alpha1
|
||||||
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1beta1
|
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/v1beta1
|
||||||
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/validation
|
k8s.io/apiserver/pkg/admission/plugin/resourcequota/apis/resourcequota/validation
|
||||||
|
k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy
|
||||||
|
k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/internal/generic
|
||||||
|
k8s.io/apiserver/pkg/admission/plugin/validatingadmissionpolicy/matching
|
||||||
k8s.io/apiserver/pkg/admission/plugin/webhook
|
k8s.io/apiserver/pkg/admission/plugin/webhook
|
||||||
k8s.io/apiserver/pkg/admission/plugin/webhook/config
|
k8s.io/apiserver/pkg/admission/plugin/webhook/config
|
||||||
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission
|
k8s.io/apiserver/pkg/admission/plugin/webhook/config/apis/webhookadmission
|
||||||
|
Loading…
Reference in New Issue
Block a user