mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
remove init blocks from all admission plugins
This commit is contained in:
parent
5dd56c9b1e
commit
c5019bf696
@ -19,7 +19,6 @@ go_library(
|
|||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/validation:go_default_library",
|
"//pkg/api/validation:go_default_library",
|
||||||
"//pkg/features:go_default_library",
|
"//pkg/features:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//pkg/kubeapiserver/options:go_default_library",
|
"//pkg/kubeapiserver/options:go_default_library",
|
||||||
"//pkg/kubelet/client:go_default_library",
|
"//pkg/kubelet/client:go_default_library",
|
||||||
"//pkg/master/ports:go_default_library",
|
"//pkg/master/ports:go_default_library",
|
||||||
|
@ -26,7 +26,6 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/storage/storagebackend"
|
"k8s.io/apiserver/pkg/storage/storagebackend"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/validation"
|
"k8s.io/kubernetes/pkg/api/validation"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
kubeoptions "k8s.io/kubernetes/pkg/kubeapiserver/options"
|
kubeoptions "k8s.io/kubernetes/pkg/kubeapiserver/options"
|
||||||
kubeletclient "k8s.io/kubernetes/pkg/kubelet/client"
|
kubeletclient "k8s.io/kubernetes/pkg/kubelet/client"
|
||||||
"k8s.io/kubernetes/pkg/master/ports"
|
"k8s.io/kubernetes/pkg/master/ports"
|
||||||
@ -79,7 +78,7 @@ func NewServerRunOptions() *ServerRunOptions {
|
|||||||
InsecureServing: kubeoptions.NewInsecureServingOptions(),
|
InsecureServing: kubeoptions.NewInsecureServingOptions(),
|
||||||
Audit: genericoptions.NewAuditLogOptions(),
|
Audit: genericoptions.NewAuditLogOptions(),
|
||||||
Features: genericoptions.NewFeatureOptions(),
|
Features: genericoptions.NewFeatureOptions(),
|
||||||
Admission: genericoptions.NewAdmissionOptions(&kubeapiserveradmission.Plugins),
|
Admission: genericoptions.NewAdmissionOptions(),
|
||||||
Authentication: kubeoptions.NewBuiltInAuthenticationOptions().WithAll(),
|
Authentication: kubeoptions.NewBuiltInAuthenticationOptions().WithAll(),
|
||||||
Authorization: kubeoptions.NewBuiltInAuthorizationOptions(),
|
Authorization: kubeoptions.NewBuiltInAuthorizationOptions(),
|
||||||
CloudProvider: kubeoptions.NewCloudProviderOptions(),
|
CloudProvider: kubeoptions.NewCloudProviderOptions(),
|
||||||
|
@ -24,27 +24,55 @@ import (
|
|||||||
_ "k8s.io/kubernetes/pkg/cloudprovider/providers"
|
_ "k8s.io/kubernetes/pkg/cloudprovider/providers"
|
||||||
|
|
||||||
// Admission policies
|
// Admission policies
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/admit"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages"
|
"k8s.io/kubernetes/plugin/pkg/admission/admit"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/antiaffinity"
|
"k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/defaulttolerationseconds"
|
"k8s.io/kubernetes/plugin/pkg/admission/antiaffinity"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/deny"
|
"k8s.io/kubernetes/plugin/pkg/admission/defaulttolerationseconds"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/exec"
|
"k8s.io/kubernetes/plugin/pkg/admission/deny"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/gc"
|
"k8s.io/kubernetes/plugin/pkg/admission/exec"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/imagepolicy"
|
"k8s.io/kubernetes/plugin/pkg/admission/gc"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/initialresources"
|
"k8s.io/kubernetes/plugin/pkg/admission/imagepolicy"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/limitranger"
|
"k8s.io/kubernetes/plugin/pkg/admission/initialresources"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/namespace/autoprovision"
|
"k8s.io/kubernetes/plugin/pkg/admission/limitranger"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/namespace/exists"
|
"k8s.io/kubernetes/plugin/pkg/admission/namespace/autoprovision"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle"
|
"k8s.io/kubernetes/plugin/pkg/admission/namespace/exists"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/noderestriction"
|
"k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/persistentvolume/label"
|
noderestriction "k8s.io/kubernetes/plugin/pkg/admission/noderestriction"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/podnodeselector"
|
"k8s.io/kubernetes/plugin/pkg/admission/persistentvolume/label"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/podpreset"
|
"k8s.io/kubernetes/plugin/pkg/admission/podnodeselector"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction"
|
podpreset "k8s.io/kubernetes/plugin/pkg/admission/podpreset"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/resourcequota"
|
"k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/security/podsecuritypolicy"
|
"k8s.io/kubernetes/plugin/pkg/admission/resourcequota"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/securitycontext/scdeny"
|
podsecuritypolicy "k8s.io/kubernetes/plugin/pkg/admission/security/podsecuritypolicy"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/serviceaccount"
|
"k8s.io/kubernetes/plugin/pkg/admission/securitycontext/scdeny"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/storageclass/default"
|
"k8s.io/kubernetes/plugin/pkg/admission/serviceaccount"
|
||||||
|
storagedefault "k8s.io/kubernetes/plugin/pkg/admission/storageclass/default"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// registerAllAdmissionPlugins registers all admission plugins
|
||||||
|
func registerAllAdmissionPlugins(plugins *admission.Plugins) {
|
||||||
|
admit.Register(plugins)
|
||||||
|
alwayspullimages.Register(plugins)
|
||||||
|
antiaffinity.Register(plugins)
|
||||||
|
defaulttolerationseconds.Register(plugins)
|
||||||
|
deny.Register(plugins)
|
||||||
|
exec.Register(plugins)
|
||||||
|
gc.Register(plugins)
|
||||||
|
imagepolicy.Register(plugins)
|
||||||
|
initialresources.Register(plugins)
|
||||||
|
limitranger.Register(plugins)
|
||||||
|
autoprovision.Register(plugins)
|
||||||
|
exists.Register(plugins)
|
||||||
|
lifecycle.Register(plugins)
|
||||||
|
noderestriction.Register(plugins)
|
||||||
|
label.Register(plugins)
|
||||||
|
podnodeselector.Register(plugins)
|
||||||
|
podpreset.Register(plugins)
|
||||||
|
podtolerationrestriction.Register(plugins)
|
||||||
|
resourcequota.Register(plugins)
|
||||||
|
podsecuritypolicy.Register(plugins)
|
||||||
|
scdeny.Register(plugins)
|
||||||
|
serviceaccount.Register(plugins)
|
||||||
|
storagedefault.Register(plugins)
|
||||||
|
}
|
||||||
|
@ -154,6 +154,9 @@ func CreateKubeAPIServer(kubeAPIServerConfig *master.Config, sharedInformers inf
|
|||||||
|
|
||||||
// CreateKubeAPIServerConfig creates all the resources for running the API server, but runs none of them
|
// CreateKubeAPIServerConfig creates all the resources for running the API server, but runs none of them
|
||||||
func CreateKubeAPIServerConfig(s *options.ServerRunOptions) (*master.Config, informers.SharedInformerFactory, *kubeserver.InsecureServingInfo, error) {
|
func CreateKubeAPIServerConfig(s *options.ServerRunOptions) (*master.Config, informers.SharedInformerFactory, *kubeserver.InsecureServingInfo, error) {
|
||||||
|
// register all admission plugins
|
||||||
|
registerAllAdmissionPlugins(s.Admission.Plugins)
|
||||||
|
|
||||||
// set defaults in the options before trying to create the generic config
|
// set defaults in the options before trying to create the generic config
|
||||||
if err := defaultOptions(s); err != nil {
|
if err := defaultOptions(s); err != nil {
|
||||||
return nil, nil, nil, err
|
return nil, nil, nil, err
|
||||||
|
@ -76,6 +76,7 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/server:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/server:go_default_library",
|
||||||
|
@ -17,7 +17,6 @@ go_library(
|
|||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/features:go_default_library",
|
"//pkg/features:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//pkg/kubeapiserver/options:go_default_library",
|
"//pkg/kubeapiserver/options:go_default_library",
|
||||||
"//vendor/github.com/spf13/pflag:go_default_library",
|
"//vendor/github.com/spf13/pflag:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/server/options:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/server/options:go_default_library",
|
||||||
|
@ -23,7 +23,6 @@ import (
|
|||||||
genericoptions "k8s.io/apiserver/pkg/server/options"
|
genericoptions "k8s.io/apiserver/pkg/server/options"
|
||||||
"k8s.io/apiserver/pkg/storage/storagebackend"
|
"k8s.io/apiserver/pkg/storage/storagebackend"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
kubeoptions "k8s.io/kubernetes/pkg/kubeapiserver/options"
|
kubeoptions "k8s.io/kubernetes/pkg/kubeapiserver/options"
|
||||||
|
|
||||||
// add the kubernetes feature gates
|
// add the kubernetes feature gates
|
||||||
@ -59,7 +58,7 @@ func NewServerRunOptions() *ServerRunOptions {
|
|||||||
InsecureServing: kubeoptions.NewInsecureServingOptions(),
|
InsecureServing: kubeoptions.NewInsecureServingOptions(),
|
||||||
Audit: genericoptions.NewAuditLogOptions(),
|
Audit: genericoptions.NewAuditLogOptions(),
|
||||||
Features: genericoptions.NewFeatureOptions(),
|
Features: genericoptions.NewFeatureOptions(),
|
||||||
Admission: genericoptions.NewAdmissionOptions(&kubeapiserveradmission.Plugins),
|
Admission: genericoptions.NewAdmissionOptions(),
|
||||||
Authentication: kubeoptions.NewBuiltInAuthenticationOptions().WithAll(),
|
Authentication: kubeoptions.NewBuiltInAuthenticationOptions().WithAll(),
|
||||||
Authorization: kubeoptions.NewBuiltInAuthorizationOptions(),
|
Authorization: kubeoptions.NewBuiltInAuthorizationOptions(),
|
||||||
CloudProvider: kubeoptions.NewCloudProviderOptions(),
|
CloudProvider: kubeoptions.NewCloudProviderOptions(),
|
||||||
|
@ -21,11 +21,20 @@ package app
|
|||||||
// given binary target.
|
// given binary target.
|
||||||
import (
|
import (
|
||||||
// Cloud providers
|
// Cloud providers
|
||||||
|
"k8s.io/apiserver/pkg/admission"
|
||||||
_ "k8s.io/kubernetes/pkg/cloudprovider/providers"
|
_ "k8s.io/kubernetes/pkg/cloudprovider/providers"
|
||||||
|
|
||||||
// Admission policies
|
// Admission policies
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/admit"
|
"k8s.io/kubernetes/plugin/pkg/admission/admit"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/deny"
|
"k8s.io/kubernetes/plugin/pkg/admission/deny"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/gc"
|
"k8s.io/kubernetes/plugin/pkg/admission/gc"
|
||||||
_ "k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle"
|
"k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// registerAllAdmissionPlugins registers all admission plugins
|
||||||
|
func registerAllAdmissionPlugins(plugins *admission.Plugins) {
|
||||||
|
admit.Register(plugins)
|
||||||
|
deny.Register(plugins)
|
||||||
|
gc.Register(plugins)
|
||||||
|
lifecycle.Register(plugins)
|
||||||
|
}
|
||||||
|
@ -85,6 +85,8 @@ func Run(s *options.ServerRunOptions, stopCh <-chan struct{}) error {
|
|||||||
// NonBlockingRun runs the specified APIServer and configures it to
|
// NonBlockingRun runs the specified APIServer and configures it to
|
||||||
// stop with the given channel.
|
// stop with the given channel.
|
||||||
func NonBlockingRun(s *options.ServerRunOptions, stopCh <-chan struct{}) error {
|
func NonBlockingRun(s *options.ServerRunOptions, stopCh <-chan struct{}) error {
|
||||||
|
// register all admission plugins
|
||||||
|
registerAllAdmissionPlugins(s.Admission.Plugins)
|
||||||
// set defaults
|
// set defaults
|
||||||
if err := s.GenericServerRunOptions.DefaultAdvertiseAddress(s.SecureServing); err != nil {
|
if err := s.GenericServerRunOptions.DefaultAdvertiseAddress(s.SecureServing); err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -21,10 +21,7 @@ go_test(
|
|||||||
|
|
||||||
go_library(
|
go_library(
|
||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = [
|
srcs = ["initializer.go"],
|
||||||
"initializer.go",
|
|
||||||
"registry.go",
|
|
||||||
],
|
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
||||||
|
@ -1,24 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2016 The Kubernetes Authors.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package admission
|
|
||||||
|
|
||||||
import (
|
|
||||||
"k8s.io/apiserver/pkg/admission"
|
|
||||||
)
|
|
||||||
|
|
||||||
// Plugins is a global registry for admission plugins.
|
|
||||||
var Plugins = admission.Plugins{}
|
|
@ -12,10 +12,7 @@ go_library(
|
|||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = ["admission.go"],
|
srcs = ["admission.go"],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = ["//vendor/k8s.io/apiserver/pkg/admission:go_default_library"],
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
go_test(
|
go_test(
|
||||||
|
@ -20,13 +20,8 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
|
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("AlwaysAdmit", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("AlwaysAdmit", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -14,7 +14,6 @@ go_library(
|
|||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -30,13 +30,8 @@ import (
|
|||||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("AlwaysPullImages", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("AlwaysPullImages", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -17,7 +17,6 @@ go_library(
|
|||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
||||||
|
@ -24,13 +24,8 @@ import (
|
|||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("LimitPodHardAntiAffinityTopology", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("LimitPodHardAntiAffinityTopology", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -28,7 +28,6 @@ go_library(
|
|||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/helper:go_default_library",
|
"//pkg/api/helper:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
||||||
|
@ -26,7 +26,6 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/helper"
|
"k8s.io/kubernetes/pkg/api/helper"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -39,10 +38,6 @@ var (
|
|||||||
" that is added by default to every pod that does not already have such a toleration.")
|
" that is added by default to every pod that does not already have such a toleration.")
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("DefaultTolerationSeconds", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("DefaultTolerationSeconds", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -12,10 +12,7 @@ go_library(
|
|||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = ["admission.go"],
|
srcs = ["admission.go"],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = ["//vendor/k8s.io/apiserver/pkg/admission:go_default_library"],
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
go_test(
|
go_test(
|
||||||
|
@ -21,13 +21,8 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
|
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("AlwaysDeny", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("AlwaysDeny", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -29,10 +29,6 @@ import (
|
|||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("DenyEscalatingExec", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("DenyEscalatingExec", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -13,7 +13,6 @@ go_library(
|
|||||||
srcs = ["gc_admission.go"],
|
srcs = ["gc_admission.go"],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
|
@ -28,13 +28,8 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/apiserver/pkg/authorization/authorizer"
|
"k8s.io/apiserver/pkg/authorization/authorizer"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("OwnerReferencesPermissionEnforcement", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("OwnerReferencesPermissionEnforcement", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -20,7 +20,6 @@ go_library(
|
|||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/apis/imagepolicy/install:go_default_library",
|
"//pkg/apis/imagepolicy/install:go_default_library",
|
||||||
"//pkg/apis/imagepolicy/v1alpha1:go_default_library",
|
"//pkg/apis/imagepolicy/v1alpha1:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/github.com/golang/glog:go_default_library",
|
"//vendor/github.com/golang/glog:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
|
@ -39,7 +39,6 @@ import (
|
|||||||
|
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1"
|
"k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
|
|
||||||
// install the clientgo image policy API for use with api registry
|
// install the clientgo image policy API for use with api registry
|
||||||
_ "k8s.io/kubernetes/pkg/apis/imagepolicy/install"
|
_ "k8s.io/kubernetes/pkg/apis/imagepolicy/install"
|
||||||
@ -49,10 +48,6 @@ var (
|
|||||||
groupVersions = []schema.GroupVersion{v1alpha1.SchemeGroupVersion}
|
groupVersions = []schema.GroupVersion{v1alpha1.SchemeGroupVersion}
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("ImagePolicyWebhook", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("ImagePolicyWebhook", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -20,7 +20,6 @@ go_library(
|
|||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/cloud.google.com/go/compute/metadata:go_default_library",
|
"//vendor/cloud.google.com/go/compute/metadata:go_default_library",
|
||||||
"//vendor/github.com/golang/glog:go_default_library",
|
"//vendor/github.com/golang/glog:go_default_library",
|
||||||
"//vendor/github.com/hawkular/hawkular-client-go/metrics:go_default_library",
|
"//vendor/github.com/hawkular/hawkular-client-go/metrics:go_default_library",
|
||||||
|
@ -29,7 +29,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/api/resource"
|
"k8s.io/apimachinery/pkg/api/resource"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -45,12 +44,8 @@ const (
|
|||||||
month = 30 * 24 * time.Hour
|
month = 30 * 24 * time.Hour
|
||||||
)
|
)
|
||||||
|
|
||||||
// WARNING: this feature is experimental and will definitely change.
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
|
// WARNING: this feature is experimental and will definitely change.
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("InitialResources", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("InitialResources", func(config io.Reader) (admission.Interface, error) {
|
||||||
// TODO: remove the usage of flags in favor of reading versioned configuration
|
// TODO: remove the usage of flags in favor of reading versioned configuration
|
||||||
|
@ -43,10 +43,6 @@ const (
|
|||||||
limitRangerAnnotation = "kubernetes.io/limit-ranger"
|
limitRangerAnnotation = "kubernetes.io/limit-ranger"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("LimitRanger", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("LimitRanger", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -30,10 +30,6 @@ import (
|
|||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("NamespaceAutoProvision", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("NamespaceAutoProvision", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -30,10 +30,6 @@ import (
|
|||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("NamespaceExists", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("NamespaceExists", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -50,10 +50,6 @@ const (
|
|||||||
missingNamespaceWait = 50 * time.Millisecond
|
missingNamespaceWait = 50 * time.Millisecond
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -34,8 +34,9 @@ const (
|
|||||||
PluginName = "NodeRestriction"
|
PluginName = "NodeRestriction"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
// Register registers a plugin
|
||||||
kubeapiserveradmission.Plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
func Register(plugins *admission.Plugins) {
|
||||||
|
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
return NewPlugin(nodeidentifier.NewDefaultNodeIdentifier(), false), nil
|
return NewPlugin(nodeidentifier.NewDefaultNodeIdentifier(), false), nil
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -32,10 +32,6 @@ import (
|
|||||||
vol "k8s.io/kubernetes/pkg/volume"
|
vol "k8s.io/kubernetes/pkg/volume"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("PersistentVolumeLabel", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("PersistentVolumeLabel", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -39,10 +39,6 @@ import (
|
|||||||
// node selectors labels to namespaces
|
// node selectors labels to namespaces
|
||||||
var NamespaceNodeSelectors = []string{"scheduler.alpha.kubernetes.io/node-selector"}
|
var NamespaceNodeSelectors = []string{"scheduler.alpha.kubernetes.io/node-selector"}
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("PodNodeSelector", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("PodNodeSelector", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -41,10 +41,6 @@ const (
|
|||||||
pluginName = "PodPreset"
|
pluginName = "PodPreset"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register(pluginName, func(config io.Reader) (admission.Interface, error) {
|
plugins.Register(pluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -36,13 +36,9 @@ import (
|
|||||||
pluginapi "k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction"
|
pluginapi "k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
kubeapiserveradmission.Plugins.Register("PodTolerationRestriction", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("PodTolerationRestriction", func(config io.Reader) (admission.Interface, error) {
|
||||||
pluginConfig, err := loadConfiguration(config)
|
pluginConfig, err := loadConfiguration(config)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -31,10 +31,6 @@ import (
|
|||||||
"k8s.io/kubernetes/plugin/pkg/admission/resourcequota/apis/resourcequota/validation"
|
"k8s.io/kubernetes/plugin/pkg/admission/resourcequota/apis/resourcequota/validation"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("ResourceQuota",
|
plugins.Register("ResourceQuota",
|
||||||
|
@ -44,10 +44,6 @@ const (
|
|||||||
PluginName = "PodSecurityPolicy"
|
PluginName = "PodSecurityPolicy"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -14,7 +14,6 @@ go_library(
|
|||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/kubeapiserver/admission:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -23,13 +23,8 @@ import (
|
|||||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
"k8s.io/apiserver/pkg/admission"
|
"k8s.io/apiserver/pkg/admission"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kubeapiserveradmission "k8s.io/kubernetes/pkg/kubeapiserver/admission"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register("SecurityContextDeny", func(config io.Reader) (admission.Interface, error) {
|
plugins.Register("SecurityContextDeny", func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -53,10 +53,6 @@ const DefaultAPITokenMountPath = "/var/run/secrets/kubernetes.io/serviceaccount"
|
|||||||
// PluginName is the name of this admission plugin
|
// PluginName is the name of this admission plugin
|
||||||
const PluginName = "ServiceAccount"
|
const PluginName = "ServiceAccount"
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -38,10 +38,6 @@ const (
|
|||||||
PluginName = "DefaultStorageClass"
|
PluginName = "DefaultStorageClass"
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
Register(&kubeapiserveradmission.Plugins)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Register registers a plugin
|
// Register registers a plugin
|
||||||
func Register(plugins *admission.Plugins) {
|
func Register(plugins *admission.Plugins) {
|
||||||
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
plugins.Register(PluginName, func(config io.Reader) (admission.Interface, error) {
|
||||||
|
@ -35,9 +35,9 @@ type AdmissionOptions struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewAdmissionOptions creates a new instance of AdmissionOptions
|
// NewAdmissionOptions creates a new instance of AdmissionOptions
|
||||||
func NewAdmissionOptions(plugins *admission.Plugins) *AdmissionOptions {
|
func NewAdmissionOptions() *AdmissionOptions {
|
||||||
return &AdmissionOptions{
|
return &AdmissionOptions{
|
||||||
Plugins: plugins,
|
Plugins: &admission.Plugins{},
|
||||||
PluginNames: []string{},
|
PluginNames: []string{},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user