Update dependencies to K8s 1.8
This commit is contained in:
parent
ba6c89672d
commit
6a59f4c9a2
1114 changed files with 160955 additions and 262845 deletions
25
vendor/k8s.io/api/authorization/v1/BUILD
generated
vendored
25
vendor/k8s.io/api/authorization/v1/BUILD
generated
vendored
|
|
@ -1,7 +1,5 @@
|
|||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
licenses(["notice"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_library",
|
||||
|
|
@ -13,20 +11,35 @@ go_library(
|
|||
"doc.go",
|
||||
"generated.pb.go",
|
||||
"register.go",
|
||||
"types.generated.go",
|
||||
"types.go",
|
||||
"types_swagger_doc_generated.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
||||
"//vendor/github.com/gogo/protobuf/sortkeys:go_default_library",
|
||||
"//vendor/github.com/ugorji/go/codec:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||
],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
tags = ["automanaged"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "go_default_library_protos",
|
||||
srcs = ["generated.proto"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
1280
vendor/k8s.io/api/authorization/v1/generated.pb.go
generated
vendored
1280
vendor/k8s.io/api/authorization/v1/generated.pb.go
generated
vendored
File diff suppressed because it is too large
Load diff
82
vendor/k8s.io/api/authorization/v1/generated.proto
generated
vendored
82
vendor/k8s.io/api/authorization/v1/generated.proto
generated
vendored
|
|
@ -65,6 +65,17 @@ message NonResourceAttributes {
|
|||
optional string verb = 2;
|
||||
}
|
||||
|
||||
// NonResourceRule holds information that describes a rule for the non-resource
|
||||
message NonResourceRule {
|
||||
// Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. "*" means all.
|
||||
repeated string verbs = 1;
|
||||
|
||||
// NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full,
|
||||
// final step in the path. "*" means all.
|
||||
// +optional
|
||||
repeated string nonResourceURLs = 2;
|
||||
}
|
||||
|
||||
// ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface
|
||||
message ResourceAttributes {
|
||||
// Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces
|
||||
|
|
@ -99,6 +110,26 @@ message ResourceAttributes {
|
|||
optional string name = 7;
|
||||
}
|
||||
|
||||
// ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant,
|
||||
// may contain duplicates, and possibly be incomplete.
|
||||
message ResourceRule {
|
||||
// Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. "*" means all.
|
||||
repeated string verbs = 1;
|
||||
|
||||
// APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of
|
||||
// the enumerated resources in any API group will be allowed. "*" means all.
|
||||
// +optional
|
||||
repeated string apiGroups = 2;
|
||||
|
||||
// Resources is a list of resources this rule applies to. ResourceAll represents all resources. "*" means all.
|
||||
// +optional
|
||||
repeated string resources = 3;
|
||||
|
||||
// ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. "*" means all.
|
||||
// +optional
|
||||
repeated string resourceNames = 4;
|
||||
}
|
||||
|
||||
// SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a
|
||||
// spec.namespace means "in all namespaces". Self is a special case, because users should always be able
|
||||
// to check whether they can perform an action
|
||||
|
|
@ -126,6 +157,29 @@ message SelfSubjectAccessReviewSpec {
|
|||
optional NonResourceAttributes nonResourceAttributes = 2;
|
||||
}
|
||||
|
||||
// SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace.
|
||||
// The returned list of actions may be incomplete depending on the server's authorization mode,
|
||||
// and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions,
|
||||
// or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to
|
||||
// drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns.
|
||||
// SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
|
||||
message SelfSubjectRulesReview {
|
||||
// +optional
|
||||
optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
|
||||
|
||||
// Spec holds information about the request being evaluated.
|
||||
optional SelfSubjectRulesReviewSpec spec = 2;
|
||||
|
||||
// Status is filled in by the server and indicates the set of actions a user can perform.
|
||||
// +optional
|
||||
optional SubjectRulesReviewStatus status = 3;
|
||||
}
|
||||
|
||||
message SelfSubjectRulesReviewSpec {
|
||||
// Namespace to evaluate rules for. Required.
|
||||
optional string namespace = 1;
|
||||
}
|
||||
|
||||
// SubjectAccessReview checks whether or not a user or group can perform an action.
|
||||
message SubjectAccessReview {
|
||||
// +optional
|
||||
|
|
@ -163,6 +217,10 @@ message SubjectAccessReviewSpec {
|
|||
// it needs a reflection here.
|
||||
// +optional
|
||||
map<string, ExtraValue> extra = 5;
|
||||
|
||||
// UID information about the requesting user.
|
||||
// +optional
|
||||
optional string uid = 6;
|
||||
}
|
||||
|
||||
// SubjectAccessReviewStatus
|
||||
|
|
@ -181,3 +239,27 @@ message SubjectAccessReviewStatus {
|
|||
optional string evaluationError = 3;
|
||||
}
|
||||
|
||||
// SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on
|
||||
// the set of authorizers the server is configured with and any errors experienced during evaluation.
|
||||
// Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission,
|
||||
// even if that list is incomplete.
|
||||
message SubjectRulesReviewStatus {
|
||||
// ResourceRules is the list of actions the subject is allowed to perform on resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
repeated ResourceRule resourceRules = 1;
|
||||
|
||||
// NonResourceRules is the list of actions the subject is allowed to perform on non-resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
repeated NonResourceRule nonResourceRules = 2;
|
||||
|
||||
// Incomplete is true when the rules returned by this call are incomplete. This is most commonly
|
||||
// encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.
|
||||
optional bool incomplete = 3;
|
||||
|
||||
// EvaluationError can appear in combination with Rules. It indicates an error occurred during
|
||||
// rule evaluation, such as an authorizer that doesn't support rule evaluation, and that
|
||||
// ResourceRules and/or NonResourceRules may be incomplete.
|
||||
// +optional
|
||||
optional string evaluationError = 4;
|
||||
}
|
||||
|
||||
|
|
|
|||
1
vendor/k8s.io/api/authorization/v1/register.go
generated
vendored
1
vendor/k8s.io/api/authorization/v1/register.go
generated
vendored
|
|
@ -44,6 +44,7 @@ var (
|
|||
// Adds the list of known types to api.Scheme.
|
||||
func addKnownTypes(scheme *runtime.Scheme) error {
|
||||
scheme.AddKnownTypes(SchemeGroupVersion,
|
||||
&SelfSubjectRulesReview{},
|
||||
&SelfSubjectAccessReview{},
|
||||
&SubjectAccessReview{},
|
||||
&LocalSubjectAccessReview{},
|
||||
|
|
|
|||
3233
vendor/k8s.io/api/authorization/v1/types.generated.go
generated
vendored
3233
vendor/k8s.io/api/authorization/v1/types.generated.go
generated
vendored
File diff suppressed because it is too large
Load diff
82
vendor/k8s.io/api/authorization/v1/types.go
generated
vendored
82
vendor/k8s.io/api/authorization/v1/types.go
generated
vendored
|
|
@ -142,6 +142,9 @@ type SubjectAccessReviewSpec struct {
|
|||
// it needs a reflection here.
|
||||
// +optional
|
||||
Extra map[string]ExtraValue `json:"extra,omitempty" protobuf:"bytes,5,rep,name=extra"`
|
||||
// UID information about the requesting user.
|
||||
// +optional
|
||||
UID string `json:"uid,omitempty" protobuf:"bytes,6,opt,name=uid"`
|
||||
}
|
||||
|
||||
// ExtraValue masks the value so protobuf can generate
|
||||
|
|
@ -177,3 +180,82 @@ type SubjectAccessReviewStatus struct {
|
|||
// +optional
|
||||
EvaluationError string `json:"evaluationError,omitempty" protobuf:"bytes,3,opt,name=evaluationError"`
|
||||
}
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +genclient:noVerbs
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace.
|
||||
// The returned list of actions may be incomplete depending on the server's authorization mode,
|
||||
// and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions,
|
||||
// or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to
|
||||
// drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns.
|
||||
// SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
|
||||
type SelfSubjectRulesReview struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
// +optional
|
||||
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
|
||||
|
||||
// Spec holds information about the request being evaluated.
|
||||
Spec SelfSubjectRulesReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"`
|
||||
|
||||
// Status is filled in by the server and indicates the set of actions a user can perform.
|
||||
// +optional
|
||||
Status SubjectRulesReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
|
||||
}
|
||||
|
||||
type SelfSubjectRulesReviewSpec struct {
|
||||
// Namespace to evaluate rules for. Required.
|
||||
Namespace string `json:"namespace,omitempty" protobuf:"bytes,1,opt,name=namespace"`
|
||||
}
|
||||
|
||||
// SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on
|
||||
// the set of authorizers the server is configured with and any errors experienced during evaluation.
|
||||
// Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission,
|
||||
// even if that list is incomplete.
|
||||
type SubjectRulesReviewStatus struct {
|
||||
// ResourceRules is the list of actions the subject is allowed to perform on resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
ResourceRules []ResourceRule `json:"resourceRules" protobuf:"bytes,1,rep,name=resourceRules"`
|
||||
// NonResourceRules is the list of actions the subject is allowed to perform on non-resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
NonResourceRules []NonResourceRule `json:"nonResourceRules" protobuf:"bytes,2,rep,name=nonResourceRules"`
|
||||
// Incomplete is true when the rules returned by this call are incomplete. This is most commonly
|
||||
// encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.
|
||||
Incomplete bool `json:"incomplete" protobuf:"bytes,3,rep,name=incomplete"`
|
||||
// EvaluationError can appear in combination with Rules. It indicates an error occurred during
|
||||
// rule evaluation, such as an authorizer that doesn't support rule evaluation, and that
|
||||
// ResourceRules and/or NonResourceRules may be incomplete.
|
||||
// +optional
|
||||
EvaluationError string `json:"evaluationError,omitempty" protobuf:"bytes,4,opt,name=evaluationError"`
|
||||
}
|
||||
|
||||
// ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant,
|
||||
// may contain duplicates, and possibly be incomplete.
|
||||
type ResourceRule struct {
|
||||
// Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. "*" means all.
|
||||
Verbs []string `json:"verbs" protobuf:"bytes,1,rep,name=verbs"`
|
||||
|
||||
// APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of
|
||||
// the enumerated resources in any API group will be allowed. "*" means all.
|
||||
// +optional
|
||||
APIGroups []string `json:"apiGroups,omitempty" protobuf:"bytes,2,rep,name=apiGroups"`
|
||||
// Resources is a list of resources this rule applies to. ResourceAll represents all resources. "*" means all.
|
||||
// +optional
|
||||
Resources []string `json:"resources,omitempty" protobuf:"bytes,3,rep,name=resources"`
|
||||
// ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. "*" means all.
|
||||
// +optional
|
||||
ResourceNames []string `json:"resourceNames,omitempty" protobuf:"bytes,4,rep,name=resourceNames"`
|
||||
}
|
||||
|
||||
// NonResourceRule holds information that describes a rule for the non-resource
|
||||
type NonResourceRule struct {
|
||||
// Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. "*" means all.
|
||||
Verbs []string `json:"verbs" protobuf:"bytes,1,rep,name=verbs"`
|
||||
|
||||
// NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full,
|
||||
// final step in the path. "*" means all.
|
||||
// +optional
|
||||
NonResourceURLs []string `json:"nonResourceURLs,omitempty" protobuf:"bytes,2,rep,name=nonResourceURLs"`
|
||||
}
|
||||
|
|
|
|||
53
vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.go
generated
vendored
53
vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.go
generated
vendored
|
|
@ -47,6 +47,16 @@ func (NonResourceAttributes) SwaggerDoc() map[string]string {
|
|||
return map_NonResourceAttributes
|
||||
}
|
||||
|
||||
var map_NonResourceRule = map[string]string{
|
||||
"": "NonResourceRule holds information that describes a rule for the non-resource",
|
||||
"verbs": "Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. \"*\" means all.",
|
||||
"nonResourceURLs": "NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path. \"*\" means all.",
|
||||
}
|
||||
|
||||
func (NonResourceRule) SwaggerDoc() map[string]string {
|
||||
return map_NonResourceRule
|
||||
}
|
||||
|
||||
var map_ResourceAttributes = map[string]string{
|
||||
"": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface",
|
||||
"namespace": "Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces \"\" (empty) is defaulted for LocalSubjectAccessReviews \"\" (empty) is empty for cluster-scoped resources \"\" (empty) means \"all\" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview",
|
||||
|
|
@ -62,6 +72,18 @@ func (ResourceAttributes) SwaggerDoc() map[string]string {
|
|||
return map_ResourceAttributes
|
||||
}
|
||||
|
||||
var map_ResourceRule = map[string]string{
|
||||
"": "ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"verbs": "Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. \"*\" means all.",
|
||||
"apiGroups": "APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. \"*\" means all.",
|
||||
"resources": "Resources is a list of resources this rule applies to. ResourceAll represents all resources. \"*\" means all.",
|
||||
"resourceNames": "ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. \"*\" means all.",
|
||||
}
|
||||
|
||||
func (ResourceRule) SwaggerDoc() map[string]string {
|
||||
return map_ResourceRule
|
||||
}
|
||||
|
||||
var map_SelfSubjectAccessReview = map[string]string{
|
||||
"": "SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a spec.namespace means \"in all namespaces\". Self is a special case, because users should always be able to check whether they can perform an action",
|
||||
"spec": "Spec holds information about the request being evaluated. user and groups must be empty",
|
||||
|
|
@ -82,6 +104,24 @@ func (SelfSubjectAccessReviewSpec) SwaggerDoc() map[string]string {
|
|||
return map_SelfSubjectAccessReviewSpec
|
||||
}
|
||||
|
||||
var map_SelfSubjectRulesReview = map[string]string{
|
||||
"": "SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server's authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.",
|
||||
"spec": "Spec holds information about the request being evaluated.",
|
||||
"status": "Status is filled in by the server and indicates the set of actions a user can perform.",
|
||||
}
|
||||
|
||||
func (SelfSubjectRulesReview) SwaggerDoc() map[string]string {
|
||||
return map_SelfSubjectRulesReview
|
||||
}
|
||||
|
||||
var map_SelfSubjectRulesReviewSpec = map[string]string{
|
||||
"namespace": "Namespace to evaluate rules for. Required.",
|
||||
}
|
||||
|
||||
func (SelfSubjectRulesReviewSpec) SwaggerDoc() map[string]string {
|
||||
return map_SelfSubjectRulesReviewSpec
|
||||
}
|
||||
|
||||
var map_SubjectAccessReview = map[string]string{
|
||||
"": "SubjectAccessReview checks whether or not a user or group can perform an action.",
|
||||
"spec": "Spec holds information about the request being evaluated",
|
||||
|
|
@ -99,6 +139,7 @@ var map_SubjectAccessReviewSpec = map[string]string{
|
|||
"user": "User is the user you're testing for. If you specify \"User\" but not \"Groups\", then is it interpreted as \"What if User were not a member of any groups",
|
||||
"groups": "Groups is the groups you're testing for.",
|
||||
"extra": "Extra corresponds to the user.Info.GetExtra() method from the authenticator. Since that is input to the authorizer it needs a reflection here.",
|
||||
"uid": "UID information about the requesting user.",
|
||||
}
|
||||
|
||||
func (SubjectAccessReviewSpec) SwaggerDoc() map[string]string {
|
||||
|
|
@ -116,4 +157,16 @@ func (SubjectAccessReviewStatus) SwaggerDoc() map[string]string {
|
|||
return map_SubjectAccessReviewStatus
|
||||
}
|
||||
|
||||
var map_SubjectRulesReviewStatus = map[string]string{
|
||||
"": "SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.",
|
||||
"resourceRules": "ResourceRules is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"nonResourceRules": "NonResourceRules is the list of actions the subject is allowed to perform on non-resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"incomplete": "Incomplete is true when the rules returned by this call are incomplete. This is most commonly encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.",
|
||||
"evaluationError": "EvaluationError can appear in combination with Rules. It indicates an error occurred during rule evaluation, such as an authorizer that doesn't support rule evaluation, and that ResourceRules and/or NonResourceRules may be incomplete.",
|
||||
}
|
||||
|
||||
func (SubjectRulesReviewStatus) SwaggerDoc() map[string]string {
|
||||
return map_SubjectRulesReviewStatus
|
||||
}
|
||||
|
||||
// AUTO-GENERATED FUNCTIONS END HERE
|
||||
|
|
|
|||
238
vendor/k8s.io/api/authorization/v1/zz_generated.deepcopy.go
generated
vendored
238
vendor/k8s.io/api/authorization/v1/zz_generated.deepcopy.go
generated
vendored
|
|
@ -26,13 +26,14 @@ import (
|
|||
reflect "reflect"
|
||||
)
|
||||
|
||||
// Deprecated: register deep-copy functions.
|
||||
func init() {
|
||||
SchemeBuilder.Register(RegisterDeepCopies)
|
||||
}
|
||||
|
||||
// Deprecated: RegisterDeepCopies adds deep-copy functions to the given scheme. Public
|
||||
// RegisterDeepCopies adds deep-copy functions to the given scheme. Public
|
||||
// to allow building arbitrary schemes.
|
||||
//
|
||||
// Deprecated: deepcopy registration will go away when static deepcopy is fully implemented.
|
||||
func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
||||
return scheme.AddGeneratedDeepCopyFuncs(
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
|
|
@ -43,10 +44,18 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*NonResourceAttributes).DeepCopyInto(out.(*NonResourceAttributes))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&NonResourceAttributes{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*NonResourceRule).DeepCopyInto(out.(*NonResourceRule))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&NonResourceRule{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*ResourceAttributes).DeepCopyInto(out.(*ResourceAttributes))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&ResourceAttributes{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*ResourceRule).DeepCopyInto(out.(*ResourceRule))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&ResourceRule{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectAccessReview).DeepCopyInto(out.(*SelfSubjectAccessReview))
|
||||
return nil
|
||||
|
|
@ -55,6 +64,14 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*SelfSubjectAccessReviewSpec).DeepCopyInto(out.(*SelfSubjectAccessReviewSpec))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectAccessReviewSpec{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectRulesReview).DeepCopyInto(out.(*SelfSubjectRulesReview))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectRulesReview{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectRulesReviewSpec).DeepCopyInto(out.(*SelfSubjectRulesReviewSpec))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectRulesReviewSpec{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SubjectAccessReview).DeepCopyInto(out.(*SubjectAccessReview))
|
||||
return nil
|
||||
|
|
@ -67,6 +84,10 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*SubjectAccessReviewStatus).DeepCopyInto(out.(*SubjectAccessReviewStatus))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SubjectAccessReviewStatus{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SubjectRulesReviewStatus).DeepCopyInto(out.(*SubjectRulesReviewStatus))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SubjectRulesReviewStatus{})},
|
||||
)
|
||||
}
|
||||
|
||||
|
|
@ -80,19 +101,19 @@ func (in *LocalSubjectAccessReview) DeepCopyInto(out *LocalSubjectAccessReview)
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LocalSubjectAccessReview.
|
||||
func (x *LocalSubjectAccessReview) DeepCopy() *LocalSubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSubjectAccessReview.
|
||||
func (in *LocalSubjectAccessReview) DeepCopy() *LocalSubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(LocalSubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *LocalSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *LocalSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -105,13 +126,39 @@ func (in *NonResourceAttributes) DeepCopyInto(out *NonResourceAttributes) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceAttributes.
|
||||
func (x *NonResourceAttributes) DeepCopy() *NonResourceAttributes {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceAttributes.
|
||||
func (in *NonResourceAttributes) DeepCopy() *NonResourceAttributes {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(NonResourceAttributes)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *NonResourceRule) DeepCopyInto(out *NonResourceRule) {
|
||||
*out = *in
|
||||
if in.Verbs != nil {
|
||||
in, out := &in.Verbs, &out.Verbs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.NonResourceURLs != nil {
|
||||
in, out := &in.NonResourceURLs, &out.NonResourceURLs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceRule.
|
||||
func (in *NonResourceRule) DeepCopy() *NonResourceRule {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(NonResourceRule)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -121,13 +168,49 @@ func (in *ResourceAttributes) DeepCopyInto(out *ResourceAttributes) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAttributes.
|
||||
func (x *ResourceAttributes) DeepCopy() *ResourceAttributes {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAttributes.
|
||||
func (in *ResourceAttributes) DeepCopy() *ResourceAttributes {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ResourceAttributes)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ResourceRule) DeepCopyInto(out *ResourceRule) {
|
||||
*out = *in
|
||||
if in.Verbs != nil {
|
||||
in, out := &in.Verbs, &out.Verbs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.APIGroups != nil {
|
||||
in, out := &in.APIGroups, &out.APIGroups
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.Resources != nil {
|
||||
in, out := &in.Resources, &out.Resources
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.ResourceNames != nil {
|
||||
in, out := &in.ResourceNames, &out.ResourceNames
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRule.
|
||||
func (in *ResourceRule) DeepCopy() *ResourceRule {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ResourceRule)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -141,19 +224,19 @@ func (in *SelfSubjectAccessReview) DeepCopyInto(out *SelfSubjectAccessReview) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReview.
|
||||
func (x *SelfSubjectAccessReview) DeepCopy() *SelfSubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReview.
|
||||
func (in *SelfSubjectAccessReview) DeepCopy() *SelfSubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *SelfSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *SelfSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -184,13 +267,58 @@ func (in *SelfSubjectAccessReviewSpec) DeepCopyInto(out *SelfSubjectAccessReview
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReviewSpec.
|
||||
func (x *SelfSubjectAccessReviewSpec) DeepCopy() *SelfSubjectAccessReviewSpec {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReviewSpec.
|
||||
func (in *SelfSubjectAccessReviewSpec) DeepCopy() *SelfSubjectAccessReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectAccessReviewSpec)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SelfSubjectRulesReview) DeepCopyInto(out *SelfSubjectRulesReview) {
|
||||
*out = *in
|
||||
out.TypeMeta = in.TypeMeta
|
||||
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
|
||||
out.Spec = in.Spec
|
||||
in.Status.DeepCopyInto(&out.Status)
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectRulesReview.
|
||||
func (in *SelfSubjectRulesReview) DeepCopy() *SelfSubjectRulesReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectRulesReview)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (in *SelfSubjectRulesReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SelfSubjectRulesReviewSpec) DeepCopyInto(out *SelfSubjectRulesReviewSpec) {
|
||||
*out = *in
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectRulesReviewSpec.
|
||||
func (in *SelfSubjectRulesReviewSpec) DeepCopy() *SelfSubjectRulesReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectRulesReviewSpec)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -204,19 +332,19 @@ func (in *SubjectAccessReview) DeepCopyInto(out *SubjectAccessReview) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReview.
|
||||
func (x *SubjectAccessReview) DeepCopy() *SubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReview.
|
||||
func (in *SubjectAccessReview) DeepCopy() *SubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *SubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *SubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -260,13 +388,13 @@ func (in *SubjectAccessReviewSpec) DeepCopyInto(out *SubjectAccessReviewSpec) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewSpec.
|
||||
func (x *SubjectAccessReviewSpec) DeepCopy() *SubjectAccessReviewSpec {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewSpec.
|
||||
func (in *SubjectAccessReviewSpec) DeepCopy() *SubjectAccessReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReviewSpec)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -276,12 +404,42 @@ func (in *SubjectAccessReviewStatus) DeepCopyInto(out *SubjectAccessReviewStatus
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewStatus.
|
||||
func (x *SubjectAccessReviewStatus) DeepCopy() *SubjectAccessReviewStatus {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewStatus.
|
||||
func (in *SubjectAccessReviewStatus) DeepCopy() *SubjectAccessReviewStatus {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReviewStatus)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SubjectRulesReviewStatus) DeepCopyInto(out *SubjectRulesReviewStatus) {
|
||||
*out = *in
|
||||
if in.ResourceRules != nil {
|
||||
in, out := &in.ResourceRules, &out.ResourceRules
|
||||
*out = make([]ResourceRule, len(*in))
|
||||
for i := range *in {
|
||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
||||
}
|
||||
}
|
||||
if in.NonResourceRules != nil {
|
||||
in, out := &in.NonResourceRules, &out.NonResourceRules
|
||||
*out = make([]NonResourceRule, len(*in))
|
||||
for i := range *in {
|
||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectRulesReviewStatus.
|
||||
func (in *SubjectRulesReviewStatus) DeepCopy() *SubjectRulesReviewStatus {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectRulesReviewStatus)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
|
|
|||
25
vendor/k8s.io/api/authorization/v1beta1/BUILD
generated
vendored
25
vendor/k8s.io/api/authorization/v1beta1/BUILD
generated
vendored
|
|
@ -1,7 +1,5 @@
|
|||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
licenses(["notice"])
|
||||
|
||||
load(
|
||||
"@io_bazel_rules_go//go:def.bzl",
|
||||
"go_library",
|
||||
|
|
@ -13,20 +11,35 @@ go_library(
|
|||
"doc.go",
|
||||
"generated.pb.go",
|
||||
"register.go",
|
||||
"types.generated.go",
|
||||
"types.go",
|
||||
"types_swagger_doc_generated.go",
|
||||
"zz_generated.deepcopy.go",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
deps = [
|
||||
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
||||
"//vendor/github.com/gogo/protobuf/sortkeys:go_default_library",
|
||||
"//vendor/github.com/ugorji/go/codec:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||
],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
tags = ["automanaged"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "go_default_library_protos",
|
||||
srcs = ["generated.proto"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
1280
vendor/k8s.io/api/authorization/v1beta1/generated.pb.go
generated
vendored
1280
vendor/k8s.io/api/authorization/v1beta1/generated.pb.go
generated
vendored
File diff suppressed because it is too large
Load diff
82
vendor/k8s.io/api/authorization/v1beta1/generated.proto
generated
vendored
82
vendor/k8s.io/api/authorization/v1beta1/generated.proto
generated
vendored
|
|
@ -65,6 +65,17 @@ message NonResourceAttributes {
|
|||
optional string verb = 2;
|
||||
}
|
||||
|
||||
// NonResourceRule holds information that describes a rule for the non-resource
|
||||
message NonResourceRule {
|
||||
// Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. "*" means all.
|
||||
repeated string verbs = 1;
|
||||
|
||||
// NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full,
|
||||
// final step in the path. "*" means all.
|
||||
// +optional
|
||||
repeated string nonResourceURLs = 2;
|
||||
}
|
||||
|
||||
// ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface
|
||||
message ResourceAttributes {
|
||||
// Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces
|
||||
|
|
@ -99,6 +110,26 @@ message ResourceAttributes {
|
|||
optional string name = 7;
|
||||
}
|
||||
|
||||
// ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant,
|
||||
// may contain duplicates, and possibly be incomplete.
|
||||
message ResourceRule {
|
||||
// Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. "*" means all.
|
||||
repeated string verbs = 1;
|
||||
|
||||
// APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of
|
||||
// the enumerated resources in any API group will be allowed. "*" means all.
|
||||
// +optional
|
||||
repeated string apiGroups = 2;
|
||||
|
||||
// Resources is a list of resources this rule applies to. ResourceAll represents all resources. "*" means all.
|
||||
// +optional
|
||||
repeated string resources = 3;
|
||||
|
||||
// ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. "*" means all.
|
||||
// +optional
|
||||
repeated string resourceNames = 4;
|
||||
}
|
||||
|
||||
// SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a
|
||||
// spec.namespace means "in all namespaces". Self is a special case, because users should always be able
|
||||
// to check whether they can perform an action
|
||||
|
|
@ -126,6 +157,29 @@ message SelfSubjectAccessReviewSpec {
|
|||
optional NonResourceAttributes nonResourceAttributes = 2;
|
||||
}
|
||||
|
||||
// SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace.
|
||||
// The returned list of actions may be incomplete depending on the server's authorization mode,
|
||||
// and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions,
|
||||
// or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to
|
||||
// drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns.
|
||||
// SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
|
||||
message SelfSubjectRulesReview {
|
||||
// +optional
|
||||
optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
|
||||
|
||||
// Spec holds information about the request being evaluated.
|
||||
optional SelfSubjectRulesReviewSpec spec = 2;
|
||||
|
||||
// Status is filled in by the server and indicates the set of actions a user can perform.
|
||||
// +optional
|
||||
optional SubjectRulesReviewStatus status = 3;
|
||||
}
|
||||
|
||||
message SelfSubjectRulesReviewSpec {
|
||||
// Namespace to evaluate rules for. Required.
|
||||
optional string namespace = 1;
|
||||
}
|
||||
|
||||
// SubjectAccessReview checks whether or not a user or group can perform an action.
|
||||
message SubjectAccessReview {
|
||||
// +optional
|
||||
|
|
@ -163,6 +217,10 @@ message SubjectAccessReviewSpec {
|
|||
// it needs a reflection here.
|
||||
// +optional
|
||||
map<string, ExtraValue> extra = 5;
|
||||
|
||||
// UID information about the requesting user.
|
||||
// +optional
|
||||
optional string uid = 6;
|
||||
}
|
||||
|
||||
// SubjectAccessReviewStatus
|
||||
|
|
@ -181,3 +239,27 @@ message SubjectAccessReviewStatus {
|
|||
optional string evaluationError = 3;
|
||||
}
|
||||
|
||||
// SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on
|
||||
// the set of authorizers the server is configured with and any errors experienced during evaluation.
|
||||
// Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission,
|
||||
// even if that list is incomplete.
|
||||
message SubjectRulesReviewStatus {
|
||||
// ResourceRules is the list of actions the subject is allowed to perform on resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
repeated ResourceRule resourceRules = 1;
|
||||
|
||||
// NonResourceRules is the list of actions the subject is allowed to perform on non-resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
repeated NonResourceRule nonResourceRules = 2;
|
||||
|
||||
// Incomplete is true when the rules returned by this call are incomplete. This is most commonly
|
||||
// encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.
|
||||
optional bool incomplete = 3;
|
||||
|
||||
// EvaluationError can appear in combination with Rules. It indicates an error occurred during
|
||||
// rule evaluation, such as an authorizer that doesn't support rule evaluation, and that
|
||||
// ResourceRules and/or NonResourceRules may be incomplete.
|
||||
// +optional
|
||||
optional string evaluationError = 4;
|
||||
}
|
||||
|
||||
|
|
|
|||
1
vendor/k8s.io/api/authorization/v1beta1/register.go
generated
vendored
1
vendor/k8s.io/api/authorization/v1beta1/register.go
generated
vendored
|
|
@ -44,6 +44,7 @@ var (
|
|||
// Adds the list of known types to api.Scheme.
|
||||
func addKnownTypes(scheme *runtime.Scheme) error {
|
||||
scheme.AddKnownTypes(SchemeGroupVersion,
|
||||
&SelfSubjectRulesReview{},
|
||||
&SelfSubjectAccessReview{},
|
||||
&SubjectAccessReview{},
|
||||
&LocalSubjectAccessReview{},
|
||||
|
|
|
|||
3233
vendor/k8s.io/api/authorization/v1beta1/types.generated.go
generated
vendored
3233
vendor/k8s.io/api/authorization/v1beta1/types.generated.go
generated
vendored
File diff suppressed because it is too large
Load diff
82
vendor/k8s.io/api/authorization/v1beta1/types.go
generated
vendored
82
vendor/k8s.io/api/authorization/v1beta1/types.go
generated
vendored
|
|
@ -142,6 +142,9 @@ type SubjectAccessReviewSpec struct {
|
|||
// it needs a reflection here.
|
||||
// +optional
|
||||
Extra map[string]ExtraValue `json:"extra,omitempty" protobuf:"bytes,5,rep,name=extra"`
|
||||
// UID information about the requesting user.
|
||||
// +optional
|
||||
UID string `json:"uid,omitempty" protobuf:"bytes,6,opt,name=uid"`
|
||||
}
|
||||
|
||||
// ExtraValue masks the value so protobuf can generate
|
||||
|
|
@ -177,3 +180,82 @@ type SubjectAccessReviewStatus struct {
|
|||
// +optional
|
||||
EvaluationError string `json:"evaluationError,omitempty" protobuf:"bytes,3,opt,name=evaluationError"`
|
||||
}
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +genclient:noVerbs
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace.
|
||||
// The returned list of actions may be incomplete depending on the server's authorization mode,
|
||||
// and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions,
|
||||
// or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to
|
||||
// drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns.
|
||||
// SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.
|
||||
type SelfSubjectRulesReview struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
// +optional
|
||||
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
|
||||
|
||||
// Spec holds information about the request being evaluated.
|
||||
Spec SelfSubjectRulesReviewSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"`
|
||||
|
||||
// Status is filled in by the server and indicates the set of actions a user can perform.
|
||||
// +optional
|
||||
Status SubjectRulesReviewStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
|
||||
}
|
||||
|
||||
type SelfSubjectRulesReviewSpec struct {
|
||||
// Namespace to evaluate rules for. Required.
|
||||
Namespace string `json:"namespace,omitempty" protobuf:"bytes,1,opt,name=namespace"`
|
||||
}
|
||||
|
||||
// SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on
|
||||
// the set of authorizers the server is configured with and any errors experienced during evaluation.
|
||||
// Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission,
|
||||
// even if that list is incomplete.
|
||||
type SubjectRulesReviewStatus struct {
|
||||
// ResourceRules is the list of actions the subject is allowed to perform on resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
ResourceRules []ResourceRule `json:"resourceRules" protobuf:"bytes,1,rep,name=resourceRules"`
|
||||
// NonResourceRules is the list of actions the subject is allowed to perform on non-resources.
|
||||
// The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
|
||||
NonResourceRules []NonResourceRule `json:"nonResourceRules" protobuf:"bytes,2,rep,name=nonResourceRules"`
|
||||
// Incomplete is true when the rules returned by this call are incomplete. This is most commonly
|
||||
// encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.
|
||||
Incomplete bool `json:"incomplete" protobuf:"bytes,3,rep,name=incomplete"`
|
||||
// EvaluationError can appear in combination with Rules. It indicates an error occurred during
|
||||
// rule evaluation, such as an authorizer that doesn't support rule evaluation, and that
|
||||
// ResourceRules and/or NonResourceRules may be incomplete.
|
||||
// +optional
|
||||
EvaluationError string `json:"evaluationError,omitempty" protobuf:"bytes,4,opt,name=evaluationError"`
|
||||
}
|
||||
|
||||
// ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant,
|
||||
// may contain duplicates, and possibly be incomplete.
|
||||
type ResourceRule struct {
|
||||
// Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. "*" means all.
|
||||
Verbs []string `json:"verbs" protobuf:"bytes,1,rep,name=verbs"`
|
||||
|
||||
// APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of
|
||||
// the enumerated resources in any API group will be allowed. "*" means all.
|
||||
// +optional
|
||||
APIGroups []string `json:"apiGroups,omitempty" protobuf:"bytes,2,rep,name=apiGroups"`
|
||||
// Resources is a list of resources this rule applies to. ResourceAll represents all resources. "*" means all.
|
||||
// +optional
|
||||
Resources []string `json:"resources,omitempty" protobuf:"bytes,3,rep,name=resources"`
|
||||
// ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. "*" means all.
|
||||
// +optional
|
||||
ResourceNames []string `json:"resourceNames,omitempty" protobuf:"bytes,4,rep,name=resourceNames"`
|
||||
}
|
||||
|
||||
// NonResourceRule holds information that describes a rule for the non-resource
|
||||
type NonResourceRule struct {
|
||||
// Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. "*" means all.
|
||||
Verbs []string `json:"verbs" protobuf:"bytes,1,rep,name=verbs"`
|
||||
|
||||
// NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full,
|
||||
// final step in the path. "*" means all.
|
||||
// +optional
|
||||
NonResourceURLs []string `json:"nonResourceURLs,omitempty" protobuf:"bytes,2,rep,name=nonResourceURLs"`
|
||||
}
|
||||
|
|
|
|||
53
vendor/k8s.io/api/authorization/v1beta1/types_swagger_doc_generated.go
generated
vendored
53
vendor/k8s.io/api/authorization/v1beta1/types_swagger_doc_generated.go
generated
vendored
|
|
@ -47,6 +47,16 @@ func (NonResourceAttributes) SwaggerDoc() map[string]string {
|
|||
return map_NonResourceAttributes
|
||||
}
|
||||
|
||||
var map_NonResourceRule = map[string]string{
|
||||
"": "NonResourceRule holds information that describes a rule for the non-resource",
|
||||
"verbs": "Verb is a list of kubernetes non-resource API verbs, like: get, post, put, delete, patch, head, options. \"*\" means all.",
|
||||
"nonResourceURLs": "NonResourceURLs is a set of partial urls that a user should have access to. *s are allowed, but only as the full, final step in the path. \"*\" means all.",
|
||||
}
|
||||
|
||||
func (NonResourceRule) SwaggerDoc() map[string]string {
|
||||
return map_NonResourceRule
|
||||
}
|
||||
|
||||
var map_ResourceAttributes = map[string]string{
|
||||
"": "ResourceAttributes includes the authorization attributes available for resource requests to the Authorizer interface",
|
||||
"namespace": "Namespace is the namespace of the action being requested. Currently, there is no distinction between no namespace and all namespaces \"\" (empty) is defaulted for LocalSubjectAccessReviews \"\" (empty) is empty for cluster-scoped resources \"\" (empty) means \"all\" for namespace scoped resources from a SubjectAccessReview or SelfSubjectAccessReview",
|
||||
|
|
@ -62,6 +72,18 @@ func (ResourceAttributes) SwaggerDoc() map[string]string {
|
|||
return map_ResourceAttributes
|
||||
}
|
||||
|
||||
var map_ResourceRule = map[string]string{
|
||||
"": "ResourceRule is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"verbs": "Verb is a list of kubernetes resource API verbs, like: get, list, watch, create, update, delete, proxy. \"*\" means all.",
|
||||
"apiGroups": "APIGroups is the name of the APIGroup that contains the resources. If multiple API groups are specified, any action requested against one of the enumerated resources in any API group will be allowed. \"*\" means all.",
|
||||
"resources": "Resources is a list of resources this rule applies to. ResourceAll represents all resources. \"*\" means all.",
|
||||
"resourceNames": "ResourceNames is an optional white list of names that the rule applies to. An empty set means that everything is allowed. \"*\" means all.",
|
||||
}
|
||||
|
||||
func (ResourceRule) SwaggerDoc() map[string]string {
|
||||
return map_ResourceRule
|
||||
}
|
||||
|
||||
var map_SelfSubjectAccessReview = map[string]string{
|
||||
"": "SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a spec.namespace means \"in all namespaces\". Self is a special case, because users should always be able to check whether they can perform an action",
|
||||
"spec": "Spec holds information about the request being evaluated. user and groups must be empty",
|
||||
|
|
@ -82,6 +104,24 @@ func (SelfSubjectAccessReviewSpec) SwaggerDoc() map[string]string {
|
|||
return map_SelfSubjectAccessReviewSpec
|
||||
}
|
||||
|
||||
var map_SelfSubjectRulesReview = map[string]string{
|
||||
"": "SelfSubjectRulesReview enumerates the set of actions the current user can perform within a namespace. The returned list of actions may be incomplete depending on the server's authorization mode, and any errors experienced during the evaluation. SelfSubjectRulesReview should be used by UIs to show/hide actions, or to quickly let an end user reason about their permissions. It should NOT Be used by external systems to drive authorization decisions as this raises confused deputy, cache lifetime/revocation, and correctness concerns. SubjectAccessReview, and LocalAccessReview are the correct way to defer authorization decisions to the API server.",
|
||||
"spec": "Spec holds information about the request being evaluated.",
|
||||
"status": "Status is filled in by the server and indicates the set of actions a user can perform.",
|
||||
}
|
||||
|
||||
func (SelfSubjectRulesReview) SwaggerDoc() map[string]string {
|
||||
return map_SelfSubjectRulesReview
|
||||
}
|
||||
|
||||
var map_SelfSubjectRulesReviewSpec = map[string]string{
|
||||
"namespace": "Namespace to evaluate rules for. Required.",
|
||||
}
|
||||
|
||||
func (SelfSubjectRulesReviewSpec) SwaggerDoc() map[string]string {
|
||||
return map_SelfSubjectRulesReviewSpec
|
||||
}
|
||||
|
||||
var map_SubjectAccessReview = map[string]string{
|
||||
"": "SubjectAccessReview checks whether or not a user or group can perform an action.",
|
||||
"spec": "Spec holds information about the request being evaluated",
|
||||
|
|
@ -99,6 +139,7 @@ var map_SubjectAccessReviewSpec = map[string]string{
|
|||
"user": "User is the user you're testing for. If you specify \"User\" but not \"Group\", then is it interpreted as \"What if User were not a member of any groups",
|
||||
"group": "Groups is the groups you're testing for.",
|
||||
"extra": "Extra corresponds to the user.Info.GetExtra() method from the authenticator. Since that is input to the authorizer it needs a reflection here.",
|
||||
"uid": "UID information about the requesting user.",
|
||||
}
|
||||
|
||||
func (SubjectAccessReviewSpec) SwaggerDoc() map[string]string {
|
||||
|
|
@ -116,4 +157,16 @@ func (SubjectAccessReviewStatus) SwaggerDoc() map[string]string {
|
|||
return map_SubjectAccessReviewStatus
|
||||
}
|
||||
|
||||
var map_SubjectRulesReviewStatus = map[string]string{
|
||||
"": "SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.",
|
||||
"resourceRules": "ResourceRules is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"nonResourceRules": "NonResourceRules is the list of actions the subject is allowed to perform on non-resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.",
|
||||
"incomplete": "Incomplete is true when the rules returned by this call are incomplete. This is most commonly encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.",
|
||||
"evaluationError": "EvaluationError can appear in combination with Rules. It indicates an error occurred during rule evaluation, such as an authorizer that doesn't support rule evaluation, and that ResourceRules and/or NonResourceRules may be incomplete.",
|
||||
}
|
||||
|
||||
func (SubjectRulesReviewStatus) SwaggerDoc() map[string]string {
|
||||
return map_SubjectRulesReviewStatus
|
||||
}
|
||||
|
||||
// AUTO-GENERATED FUNCTIONS END HERE
|
||||
|
|
|
|||
238
vendor/k8s.io/api/authorization/v1beta1/zz_generated.deepcopy.go
generated
vendored
238
vendor/k8s.io/api/authorization/v1beta1/zz_generated.deepcopy.go
generated
vendored
|
|
@ -26,13 +26,14 @@ import (
|
|||
reflect "reflect"
|
||||
)
|
||||
|
||||
// Deprecated: register deep-copy functions.
|
||||
func init() {
|
||||
SchemeBuilder.Register(RegisterDeepCopies)
|
||||
}
|
||||
|
||||
// Deprecated: RegisterDeepCopies adds deep-copy functions to the given scheme. Public
|
||||
// RegisterDeepCopies adds deep-copy functions to the given scheme. Public
|
||||
// to allow building arbitrary schemes.
|
||||
//
|
||||
// Deprecated: deepcopy registration will go away when static deepcopy is fully implemented.
|
||||
func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
||||
return scheme.AddGeneratedDeepCopyFuncs(
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
|
|
@ -43,10 +44,18 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*NonResourceAttributes).DeepCopyInto(out.(*NonResourceAttributes))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&NonResourceAttributes{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*NonResourceRule).DeepCopyInto(out.(*NonResourceRule))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&NonResourceRule{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*ResourceAttributes).DeepCopyInto(out.(*ResourceAttributes))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&ResourceAttributes{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*ResourceRule).DeepCopyInto(out.(*ResourceRule))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&ResourceRule{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectAccessReview).DeepCopyInto(out.(*SelfSubjectAccessReview))
|
||||
return nil
|
||||
|
|
@ -55,6 +64,14 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*SelfSubjectAccessReviewSpec).DeepCopyInto(out.(*SelfSubjectAccessReviewSpec))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectAccessReviewSpec{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectRulesReview).DeepCopyInto(out.(*SelfSubjectRulesReview))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectRulesReview{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SelfSubjectRulesReviewSpec).DeepCopyInto(out.(*SelfSubjectRulesReviewSpec))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SelfSubjectRulesReviewSpec{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SubjectAccessReview).DeepCopyInto(out.(*SubjectAccessReview))
|
||||
return nil
|
||||
|
|
@ -67,6 +84,10 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
|
|||
in.(*SubjectAccessReviewStatus).DeepCopyInto(out.(*SubjectAccessReviewStatus))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SubjectAccessReviewStatus{})},
|
||||
conversion.GeneratedDeepCopyFunc{Fn: func(in interface{}, out interface{}, c *conversion.Cloner) error {
|
||||
in.(*SubjectRulesReviewStatus).DeepCopyInto(out.(*SubjectRulesReviewStatus))
|
||||
return nil
|
||||
}, InType: reflect.TypeOf(&SubjectRulesReviewStatus{})},
|
||||
)
|
||||
}
|
||||
|
||||
|
|
@ -80,19 +101,19 @@ func (in *LocalSubjectAccessReview) DeepCopyInto(out *LocalSubjectAccessReview)
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new LocalSubjectAccessReview.
|
||||
func (x *LocalSubjectAccessReview) DeepCopy() *LocalSubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSubjectAccessReview.
|
||||
func (in *LocalSubjectAccessReview) DeepCopy() *LocalSubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(LocalSubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *LocalSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *LocalSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -105,13 +126,39 @@ func (in *NonResourceAttributes) DeepCopyInto(out *NonResourceAttributes) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceAttributes.
|
||||
func (x *NonResourceAttributes) DeepCopy() *NonResourceAttributes {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceAttributes.
|
||||
func (in *NonResourceAttributes) DeepCopy() *NonResourceAttributes {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(NonResourceAttributes)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *NonResourceRule) DeepCopyInto(out *NonResourceRule) {
|
||||
*out = *in
|
||||
if in.Verbs != nil {
|
||||
in, out := &in.Verbs, &out.Verbs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.NonResourceURLs != nil {
|
||||
in, out := &in.NonResourceURLs, &out.NonResourceURLs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonResourceRule.
|
||||
func (in *NonResourceRule) DeepCopy() *NonResourceRule {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(NonResourceRule)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -121,13 +168,49 @@ func (in *ResourceAttributes) DeepCopyInto(out *ResourceAttributes) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAttributes.
|
||||
func (x *ResourceAttributes) DeepCopy() *ResourceAttributes {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAttributes.
|
||||
func (in *ResourceAttributes) DeepCopy() *ResourceAttributes {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ResourceAttributes)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *ResourceRule) DeepCopyInto(out *ResourceRule) {
|
||||
*out = *in
|
||||
if in.Verbs != nil {
|
||||
in, out := &in.Verbs, &out.Verbs
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.APIGroups != nil {
|
||||
in, out := &in.APIGroups, &out.APIGroups
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.Resources != nil {
|
||||
in, out := &in.Resources, &out.Resources
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
if in.ResourceNames != nil {
|
||||
in, out := &in.ResourceNames, &out.ResourceNames
|
||||
*out = make([]string, len(*in))
|
||||
copy(*out, *in)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRule.
|
||||
func (in *ResourceRule) DeepCopy() *ResourceRule {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(ResourceRule)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -141,19 +224,19 @@ func (in *SelfSubjectAccessReview) DeepCopyInto(out *SelfSubjectAccessReview) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReview.
|
||||
func (x *SelfSubjectAccessReview) DeepCopy() *SelfSubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReview.
|
||||
func (in *SelfSubjectAccessReview) DeepCopy() *SelfSubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *SelfSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *SelfSubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -184,13 +267,58 @@ func (in *SelfSubjectAccessReviewSpec) DeepCopyInto(out *SelfSubjectAccessReview
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReviewSpec.
|
||||
func (x *SelfSubjectAccessReviewSpec) DeepCopy() *SelfSubjectAccessReviewSpec {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectAccessReviewSpec.
|
||||
func (in *SelfSubjectAccessReviewSpec) DeepCopy() *SelfSubjectAccessReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectAccessReviewSpec)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SelfSubjectRulesReview) DeepCopyInto(out *SelfSubjectRulesReview) {
|
||||
*out = *in
|
||||
out.TypeMeta = in.TypeMeta
|
||||
in.ObjectMeta.DeepCopyInto(&out.ObjectMeta)
|
||||
out.Spec = in.Spec
|
||||
in.Status.DeepCopyInto(&out.Status)
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectRulesReview.
|
||||
func (in *SelfSubjectRulesReview) DeepCopy() *SelfSubjectRulesReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectRulesReview)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (in *SelfSubjectRulesReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SelfSubjectRulesReviewSpec) DeepCopyInto(out *SelfSubjectRulesReviewSpec) {
|
||||
*out = *in
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfSubjectRulesReviewSpec.
|
||||
func (in *SelfSubjectRulesReviewSpec) DeepCopy() *SelfSubjectRulesReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SelfSubjectRulesReviewSpec)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -204,19 +332,19 @@ func (in *SubjectAccessReview) DeepCopyInto(out *SubjectAccessReview) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReview.
|
||||
func (x *SubjectAccessReview) DeepCopy() *SubjectAccessReview {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReview.
|
||||
func (in *SubjectAccessReview) DeepCopy() *SubjectAccessReview {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReview)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
|
||||
func (x *SubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := x.DeepCopy(); c != nil {
|
||||
func (in *SubjectAccessReview) DeepCopyObject() runtime.Object {
|
||||
if c := in.DeepCopy(); c != nil {
|
||||
return c
|
||||
} else {
|
||||
return nil
|
||||
|
|
@ -260,13 +388,13 @@ func (in *SubjectAccessReviewSpec) DeepCopyInto(out *SubjectAccessReviewSpec) {
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewSpec.
|
||||
func (x *SubjectAccessReviewSpec) DeepCopy() *SubjectAccessReviewSpec {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewSpec.
|
||||
func (in *SubjectAccessReviewSpec) DeepCopy() *SubjectAccessReviewSpec {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReviewSpec)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
|
|
@ -276,12 +404,42 @@ func (in *SubjectAccessReviewStatus) DeepCopyInto(out *SubjectAccessReviewStatus
|
|||
return
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewStatus.
|
||||
func (x *SubjectAccessReviewStatus) DeepCopy() *SubjectAccessReviewStatus {
|
||||
if x == nil {
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectAccessReviewStatus.
|
||||
func (in *SubjectAccessReviewStatus) DeepCopy() *SubjectAccessReviewStatus {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectAccessReviewStatus)
|
||||
x.DeepCopyInto(out)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||
func (in *SubjectRulesReviewStatus) DeepCopyInto(out *SubjectRulesReviewStatus) {
|
||||
*out = *in
|
||||
if in.ResourceRules != nil {
|
||||
in, out := &in.ResourceRules, &out.ResourceRules
|
||||
*out = make([]ResourceRule, len(*in))
|
||||
for i := range *in {
|
||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
||||
}
|
||||
}
|
||||
if in.NonResourceRules != nil {
|
||||
in, out := &in.NonResourceRules, &out.NonResourceRules
|
||||
*out = make([]NonResourceRule, len(*in))
|
||||
for i := range *in {
|
||||
(*in)[i].DeepCopyInto(&(*out)[i])
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubjectRulesReviewStatus.
|
||||
func (in *SubjectRulesReviewStatus) DeepCopy() *SubjectRulesReviewStatus {
|
||||
if in == nil {
|
||||
return nil
|
||||
}
|
||||
out := new(SubjectRulesReviewStatus)
|
||||
in.DeepCopyInto(out)
|
||||
return out
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue