Merge pull request #58185 from caesarxuchao/webhook-cluster-scoped-resources

Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Never let cluster-scoped resources skip webhooks

Fix #57964

This allows user write webhooks for cluster-scoped custom resources.

We still need to figure out how to selectively exempt cluster-scoped resources from webhooks to avoid bootstrapping deadlocks. For now, if a deadlock occurs, users can work around by first deleting the webhook configuration, then rebooting the webhook, then re-enabling the webhook configuration.

```release-note
Bug fix: webhooks now do not skip cluster-scoped resources

Action required: Before upgrading your Kubernetes clusters, double check if you had configured webhooks for cluster-scoped objects (e.g., nodes, persistentVolume), these webhooks will start to take effect. Delete/modify the configs if that's not desirable.
```

Kubernetes-commit: 0b8f3a2240c7444196e321ded215eafd7a2c96db
This commit is contained in:
Kubernetes Publisher 2018-01-24 17:41:18 -08:00
commit ceea762f7c
3 changed files with 179 additions and 179 deletions

348
Godeps/Godeps.json generated
View File

@ -852,119 +852,119 @@
},
{
"ImportPath": "k8s.io/api/admission/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/admissionregistration/v1alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/admissionregistration/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/apps/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/apps/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/apps/v1beta2",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/authentication/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/authentication/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/authorization/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/authorization/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/autoscaling/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/autoscaling/v2beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/batch/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/batch/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/batch/v2alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/certificates/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/core/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/events/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/extensions/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/networking/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/policy/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/rbac/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/rbac/v1alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/rbac/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/scheduling/v1alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/settings/v1alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/storage/v1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/storage/v1alpha1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/api/storage/v1beta1",
"Rev": "fbe336854453ac8e27bffe14e1964555245cbd05"
"Rev": "1114b579fde8730f5cffa8363506064eb082846a"
},
{
"ImportPath": "k8s.io/apimachinery/pkg/api/equality",
@ -1200,583 +1200,583 @@
},
{
"ImportPath": "k8s.io/client-go/discovery",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/discovery/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/admissionregistration",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/admissionregistration/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/admissionregistration/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/apps",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/apps/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/apps/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/apps/v1beta2",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/autoscaling",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/autoscaling/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/autoscaling/v2beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/batch",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/batch/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/batch/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/batch/v2alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/certificates",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/certificates/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/core",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/core/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/events",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/events/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/extensions",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/extensions/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/internalinterfaces",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/networking",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/networking/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/policy",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/policy/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/rbac",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/rbac/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/rbac/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/rbac/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/scheduling",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/scheduling/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/settings",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/settings/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/storage",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/storage/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/storage/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/informers/storage/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/scheme",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1/fake",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/admissionregistration/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/admissionregistration/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/apps/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/apps/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/apps/v1beta2",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/autoscaling/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/autoscaling/v2beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/batch/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/batch/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/batch/v2alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/certificates/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/core/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/events/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/extensions/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/networking/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/policy/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/rbac/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/rbac/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/rbac/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/scheduling/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/settings/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/storage/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/storage/v1alpha1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/listers/storage/v1beta1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/pkg/version",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/rest",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/rest/watch",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/testing",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/auth",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/cache",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/clientcmd",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/clientcmd/api",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/clientcmd/api/latest",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/clientcmd/api/v1",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/metrics",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/pager",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/tools/reference",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/transport",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/buffer",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/cert",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/flowcontrol",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/homedir",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/integer",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/client-go/util/retry",
"Rev": "b044414c7d52baaf48bc86edb5c89bbd73524c0f"
"Rev": "1957ffeb3d06ae9d025d90c0c9948b314680818a"
},
{
"ImportPath": "k8s.io/kube-openapi/pkg/builder",

View File

@ -90,10 +90,10 @@ func (m *Matcher) MatchNamespaceSelector(h *v1beta1.Webhook, attr admission.Attr
namespaceName := attr.GetNamespace()
if len(namespaceName) == 0 && attr.GetResource().Resource != "namespaces" {
// If the request is about a cluster scoped resource, and it is not a
// namespace, it is exempted from all webhooks for now.
// namespace, it is never exempted.
// TODO: figure out a way selective exempt cluster scoped resources.
// Also update the comment in types.go
return false, nil
return true, nil
}
namespaceLabels, err := m.GetNamespaceLabels(attr)
// this means the namespace is not found, for backwards compatibility,

View File

@ -113,7 +113,7 @@ func TestGetNamespaceLabels(t *testing.T) {
}
}
func TestExemptClusterScopedResource(t *testing.T) {
func TestNotExemptClusterScopedResource(t *testing.T) {
hook := &registrationv1beta1.Webhook{
NamespaceSelector: &metav1.LabelSelector{},
}
@ -123,7 +123,7 @@ func TestExemptClusterScopedResource(t *testing.T) {
if err != nil {
t.Fatal(err)
}
if matches {
t.Errorf("cluster scoped resources (but not a namespace) should be exempted from all webhooks")
if !matches {
t.Errorf("cluster scoped resources (but not a namespace) should not be exempted from webhooks")
}
}