Merge pull request #50325 from p0lyn0mial/sample_server_ban_flunder_plugin_get_name

Automatic merge from submit-queue

Small improvement in ban flunder admission plugin.

**What this PR does / why we need it**:
After the changes a name will be taken directly from meta field.
Previously a name was taken via attributes.GetName() method,
which in turns derived a name from a URL address.
This didn't work as we don't allow to pass a name when POSTing a resource.

#47868

**Release note**:

```
NONE
```
This commit is contained in:
Kubernetes Submit Queue 2017-08-17 10:56:47 -07:00 committed by GitHub
commit 5e5b586e55
3 changed files with 9 additions and 2 deletions

View File

@ -11,6 +11,7 @@ go_library(
srcs = ["admission.go"], srcs = ["admission.go"],
deps = [ deps = [
"//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/api/meta:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/labels:go_default_library", "//vendor/k8s.io/apimachinery/pkg/labels:go_default_library",
"//vendor/k8s.io/apiserver/pkg/admission:go_default_library", "//vendor/k8s.io/apiserver/pkg/admission:go_default_library",
"//vendor/k8s.io/sample-apiserver/pkg/admission/wardleinitializer:go_default_library", "//vendor/k8s.io/sample-apiserver/pkg/admission/wardleinitializer:go_default_library",

View File

@ -21,6 +21,7 @@ import (
"io" "io"
"k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
"k8s.io/apiserver/pkg/admission" "k8s.io/apiserver/pkg/admission"
"k8s.io/sample-apiserver/pkg/admission/wardleinitializer" "k8s.io/sample-apiserver/pkg/admission/wardleinitializer"
@ -52,7 +53,12 @@ func (d *disallowFlunder) Admit(a admission.Attributes) error {
return nil return nil
} }
flunderName := a.GetName() metaAccessor, err := meta.Accessor(a.GetObject())
if err != nil {
return err
}
flunderName := metaAccessor.GetName()
fischers, err := d.lister.List(labels.Everything()) fischers, err := d.lister.List(labels.Everything())
if err != nil { if err != nil {
return err return err

View File

@ -135,7 +135,7 @@ func TestBanflunderAdmissionPlugin(t *testing.T) {
nil, nil,
scenario.admissionInputKind, scenario.admissionInputKind,
scenario.admissionInput.ObjectMeta.Namespace, scenario.admissionInput.ObjectMeta.Namespace,
scenario.admissionInput.ObjectMeta.Name, "",
scenario.admissionInputResource, scenario.admissionInputResource,
"", "",
admission.Create, admission.Create,