diff --git a/pkg/kubectl/cmd/create_role.go b/pkg/kubectl/cmd/create_role.go index c88632879c..135d7d6793 100644 --- a/pkg/kubectl/cmd/create_role.go +++ b/pkg/kubectl/cmd/create_role.go @@ -43,9 +43,6 @@ var ( // Valid resource verb list for validation. validResourceVerbs = []string{"*", "get", "delete", "list", "create", "update", "patch", "watch", "proxy", "redirect", "deletecollection"} - - // Valid non-resource verb list for validation. - validNonResourceVerbs = []string{"get", "post", "put", "delete"} ) type CreateRoleOptions struct { @@ -137,7 +134,7 @@ func (c *CreateRoleOptions) Validate(f cmdutil.Factory) error { } for _, v := range c.Verbs { - if !arrayContains(validResourceVerbs, v) && !arrayContains(validNonResourceVerbs, v) { + if !arrayContains(validResourceVerbs, v) { return fmt.Errorf("invalid verb: '%s'", v) } } diff --git a/pkg/kubectl/cmd/create_role_test.go b/pkg/kubectl/cmd/create_role_test.go index 76a4c5d1e8..d737f95b1c 100644 --- a/pkg/kubectl/cmd/create_role_test.go +++ b/pkg/kubectl/cmd/create_role_test.go @@ -157,6 +157,18 @@ func TestValidate(t *testing.T) { }, expectErr: true, }, + "test-nonresource-verb": { + roleOptions: &CreateRoleOptions{ + Name: "my-role", + Verbs: []string{"post"}, + Resources: []schema.GroupVersionResource{ + { + Resource: "pods", + }, + }, + }, + expectErr: true, + }, "test-invalid-resource": { roleOptions: &CreateRoleOptions{ Name: "my-role",