k8s_io_api_admissionregistration_v1beta1

package
v0.0.0-...-940152b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 10, 2020 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthGenerated = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowGenerated   = fmt.Errorf("proto: integer overflow")
)

Functions

This section is empty.

Types

type MutatingWebhook

type MutatingWebhook struct {
	// The name of the admission webhook.
	// Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where
	// "imagepolicy" is the name of the webhook, and kubernetes.io is the name
	// of the organization.
	// Required.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
	// ClientConfig defines how to communicate with the hook.
	// Required
	ClientConfig *WebhookClientConfig `protobuf:"bytes,2,opt,name=clientConfig" json:"clientConfig,omitempty"`
	// Rules describes what operations on what resources/subresources the webhook cares about.
	// The webhook cares about an operation if it matches _any_ Rule.
	// However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks
	// from putting the cluster in a state which cannot be recovered from without completely
	// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
	// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
	Rules []*RuleWithOperations `protobuf:"bytes,3,rep,name=rules" json:"rules,omitempty"`
	// FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
	// allowed values are Ignore or Fail. Defaults to Ignore.
	// +optional
	FailurePolicy string `protobuf:"bytes,4,opt,name=failurePolicy" json:"failurePolicy"`
	// matchPolicy defines how the "rules" list is used to match incoming requests.
	// Allowed values are "Exact" or "Equivalent".
	//
	// - Exact: match a request only if it exactly matches a specified rule.
	// For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1,
	// but "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`,
	// a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the webhook.
	//
	// - Equivalent: match a request if modifies a resource listed in rules, even via another API group or version.
	// For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1,
	// and "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`,
	// a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the webhook.
	//
	// Defaults to "Exact"
	// +optional
	MatchPolicy string `protobuf:"bytes,9,opt,name=matchPolicy" json:"matchPolicy"`
	// NamespaceSelector decides whether to run the webhook on an object based
	// on whether the namespace for that object matches the selector. If the
	// object itself is a namespace, the matching is performed on
	// object.metadata.labels. If the object is another cluster scoped resource,
	// it never skips the webhook.
	//
	// For example, to run the webhook on any objects whose namespace is not
	// associated with "runlevel" of "0" or "1";  you will set the selector as
	// follows:
	// "namespaceSelector": {
	//   "matchExpressions": [
	//     {
	//       "key": "runlevel",
	//       "operator": "NotIn",
	//       "values": [
	//         "0",
	//         "1"
	//       ]
	//     }
	//   ]
	// }
	//
	// If instead you want to only run the webhook on any objects whose
	// namespace is associated with the "environment" of "prod" or "staging";
	// you will set the selector as follows:
	// "namespaceSelector": {
	//   "matchExpressions": [
	//     {
	//       "key": "environment",
	//       "operator": "In",
	//       "values": [
	//         "prod",
	//         "staging"
	//       ]
	//     }
	//   ]
	// }
	//
	// See
	// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
	// for more examples of label selectors.
	//
	// Default to the empty LabelSelector, which matches everything.
	// +optional
	NamespaceSelector *v1.LabelSelector `protobuf:"bytes,5,opt,name=namespaceSelector" json:"namespaceSelector,omitempty"`
	// ObjectSelector decides whether to run the webhook based on if the
	// object has matching labels. objectSelector is evaluated against both
	// the oldObject and newObject that would be sent to the webhook, and
	// is considered to match if either object matches the selector. A null
	// object (oldObject in the case of create, or newObject in the case of
	// delete) or an object that cannot have labels (like a
	// DeploymentRollback or a PodProxyOptions object) is not considered to
	// match.
	// Use the object selector only if the webhook is opt-in, because end
	// users may skip the admission webhook by setting the labels.
	// Default to the empty LabelSelector, which matches everything.
	// +optional
	ObjectSelector *v1.LabelSelector `protobuf:"bytes,11,opt,name=objectSelector" json:"objectSelector,omitempty"`
	// SideEffects states whether this webhookk has side effects.
	// Acceptable values are: Unknown, None, Some, NoneOnDryRun
	// Webhooks with side effects MUST implement a reconciliation system, since a request may be
	// rejected by a future step in the admission change and the side effects therefore need to be undone.
	// Requests with the dryRun attribute will be auto-rejected if they match a webhook with
	// sideEffects == Unknown or Some. Defaults to Unknown.
	// +optional
	SideEffects string `protobuf:"bytes,6,opt,name=sideEffects" json:"sideEffects"`
	// TimeoutSeconds specifies the timeout for this webhook. After the timeout passes,
	// the webhook call will be ignored or the API call will fail based on the
	// failure policy.
	// The timeout value must be between 1 and 30 seconds.
	// Default to 30 seconds.
	// +optional
	TimeoutSeconds int32 `protobuf:"varint,7,opt,name=timeoutSeconds" json:"timeoutSeconds"`
	// AdmissionReviewVersions is an ordered list of preferred `AdmissionReview`
	// versions the Webhook expects. API server will try to use first version in
	// the list which it supports. If none of the versions specified in this list
	// supported by API server, validation will fail for this object.
	// If a persisted webhook configuration specifies allowed versions and does not
	// include any versions known to the API Server, calls to the webhook will fail
	// and be subject to the failure policy.
	// Default to `['v1beta1']`.
	// +optional
	AdmissionReviewVersions []string `protobuf:"bytes,8,rep,name=admissionReviewVersions" json:"admissionReviewVersions,omitempty"`
	// reinvocationPolicy indicates whether this webhook should be called multiple times as part of a single admission evaluation.
	// Allowed values are "Never" and "IfNeeded".
	//
	// Never: the webhook will not be called more than once in a single admission evaluation.
	//
	// IfNeeded: the webhook will be called at least one additional time as part of the admission evaluation
	// if the object being admitted is modified by other admission plugins after the initial webhook call.
	// Webhooks that specify this option *must* be idempotent, able to process objects they previously admitted.
	// Note:
	// * the number of additional invocations is not guaranteed to be exactly one.
	// * if additional invocations result in further modifications to the object, webhooks are not guaranteed to be invoked again.
	// * webhooks that use this option may be reordered to minimize the number of additional invocations.
	// * to validate an object after all mutations are guaranteed complete, use a validating admission webhook instead.
	//
	// Defaults to "Never".
	// +optional
	ReinvocationPolicy string `protobuf:"bytes,10,opt,name=reinvocationPolicy" json:"reinvocationPolicy"`
}

MutatingWebhook describes an admission webhook and the resources and operations it applies to.

func (*MutatingWebhook) Descriptor

func (*MutatingWebhook) Descriptor() ([]byte, []int)

func (*MutatingWebhook) Equal

func (this *MutatingWebhook) Equal(that interface{}) bool

func (*MutatingWebhook) GetAdmissionReviewVersions

func (m *MutatingWebhook) GetAdmissionReviewVersions() []string

func (*MutatingWebhook) GetClientConfig

func (m *MutatingWebhook) GetClientConfig() *WebhookClientConfig

func (*MutatingWebhook) GetFailurePolicy

func (m *MutatingWebhook) GetFailurePolicy() string

func (*MutatingWebhook) GetMatchPolicy

func (m *MutatingWebhook) GetMatchPolicy() string

func (*MutatingWebhook) GetName

func (m *MutatingWebhook) GetName() string

func (*MutatingWebhook) GetNamespaceSelector

func (m *MutatingWebhook) GetNamespaceSelector() *v1.LabelSelector

func (*MutatingWebhook) GetObjectSelector

func (m *MutatingWebhook) GetObjectSelector() *v1.LabelSelector

func (*MutatingWebhook) GetReinvocationPolicy

func (m *MutatingWebhook) GetReinvocationPolicy() string

func (*MutatingWebhook) GetRules

func (m *MutatingWebhook) GetRules() []*RuleWithOperations

func (*MutatingWebhook) GetSideEffects

func (m *MutatingWebhook) GetSideEffects() string

func (*MutatingWebhook) GetTimeoutSeconds

func (m *MutatingWebhook) GetTimeoutSeconds() int32

func (*MutatingWebhook) GoString

func (this *MutatingWebhook) GoString() string

func (*MutatingWebhook) Marshal

func (m *MutatingWebhook) Marshal() (dAtA []byte, err error)

func (*MutatingWebhook) MarshalTo

func (m *MutatingWebhook) MarshalTo(dAtA []byte) (int, error)

func (*MutatingWebhook) MarshalToSizedBuffer

func (m *MutatingWebhook) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*MutatingWebhook) ProtoMessage

func (*MutatingWebhook) ProtoMessage()

func (*MutatingWebhook) Reset

func (m *MutatingWebhook) Reset()

func (*MutatingWebhook) Size

func (m *MutatingWebhook) Size() (n int)

func (*MutatingWebhook) String

func (this *MutatingWebhook) String() string

func (*MutatingWebhook) Unmarshal

func (m *MutatingWebhook) Unmarshal(dAtA []byte) error

func (*MutatingWebhook) XXX_DiscardUnknown

func (m *MutatingWebhook) XXX_DiscardUnknown()

func (*MutatingWebhook) XXX_Marshal

func (m *MutatingWebhook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MutatingWebhook) XXX_Merge

func (m *MutatingWebhook) XXX_Merge(src proto.Message)

func (*MutatingWebhook) XXX_Size

func (m *MutatingWebhook) XXX_Size() int

func (*MutatingWebhook) XXX_Unmarshal

func (m *MutatingWebhook) XXX_Unmarshal(b []byte) error

type MutatingWebhookConfiguration

type MutatingWebhookConfiguration struct {
	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.
	// +optional
	Metadata *v1.ObjectMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// Webhooks is a list of webhooks and the affected resources and operations.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	Webhooks []*MutatingWebhook `protobuf:"bytes,2,rep,name=Webhooks" json:"Webhooks,omitempty"`
}

MutatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and may change the object. Deprecated in v1.16, planned for removal in v1.19. Use admissionregistration.k8s.io/v1 MutatingWebhookConfiguration instead.

func (*MutatingWebhookConfiguration) Descriptor

func (*MutatingWebhookConfiguration) Descriptor() ([]byte, []int)

func (*MutatingWebhookConfiguration) Equal

func (this *MutatingWebhookConfiguration) Equal(that interface{}) bool

func (*MutatingWebhookConfiguration) GetMetadata

func (m *MutatingWebhookConfiguration) GetMetadata() *v1.ObjectMeta

func (*MutatingWebhookConfiguration) GetWebhooks

func (m *MutatingWebhookConfiguration) GetWebhooks() []*MutatingWebhook

func (*MutatingWebhookConfiguration) GoString

func (this *MutatingWebhookConfiguration) GoString() string

func (*MutatingWebhookConfiguration) Marshal

func (m *MutatingWebhookConfiguration) Marshal() (dAtA []byte, err error)

func (*MutatingWebhookConfiguration) MarshalTo

func (m *MutatingWebhookConfiguration) MarshalTo(dAtA []byte) (int, error)

func (*MutatingWebhookConfiguration) MarshalToSizedBuffer

func (m *MutatingWebhookConfiguration) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*MutatingWebhookConfiguration) ProtoMessage

func (*MutatingWebhookConfiguration) ProtoMessage()

func (*MutatingWebhookConfiguration) Reset

func (m *MutatingWebhookConfiguration) Reset()

func (*MutatingWebhookConfiguration) Size

func (m *MutatingWebhookConfiguration) Size() (n int)

func (*MutatingWebhookConfiguration) String

func (this *MutatingWebhookConfiguration) String() string

func (*MutatingWebhookConfiguration) Unmarshal

func (m *MutatingWebhookConfiguration) Unmarshal(dAtA []byte) error

func (*MutatingWebhookConfiguration) XXX_DiscardUnknown

func (m *MutatingWebhookConfiguration) XXX_DiscardUnknown()

func (*MutatingWebhookConfiguration) XXX_Marshal

func (m *MutatingWebhookConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MutatingWebhookConfiguration) XXX_Merge

func (m *MutatingWebhookConfiguration) XXX_Merge(src proto.Message)

func (*MutatingWebhookConfiguration) XXX_Size

func (m *MutatingWebhookConfiguration) XXX_Size() int

func (*MutatingWebhookConfiguration) XXX_Unmarshal

func (m *MutatingWebhookConfiguration) XXX_Unmarshal(b []byte) error

type MutatingWebhookConfigurationList

type MutatingWebhookConfigurationList struct {
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	Metadata *v1.ListMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// List of MutatingWebhookConfiguration.
	Items []*MutatingWebhookConfiguration `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
}

MutatingWebhookConfigurationList is a list of MutatingWebhookConfiguration.

func (*MutatingWebhookConfigurationList) Descriptor

func (*MutatingWebhookConfigurationList) Descriptor() ([]byte, []int)

func (*MutatingWebhookConfigurationList) Equal

func (this *MutatingWebhookConfigurationList) Equal(that interface{}) bool

func (*MutatingWebhookConfigurationList) GetItems

func (*MutatingWebhookConfigurationList) GetMetadata

func (m *MutatingWebhookConfigurationList) GetMetadata() *v1.ListMeta

func (*MutatingWebhookConfigurationList) GoString

func (this *MutatingWebhookConfigurationList) GoString() string

func (*MutatingWebhookConfigurationList) Marshal

func (m *MutatingWebhookConfigurationList) Marshal() (dAtA []byte, err error)

func (*MutatingWebhookConfigurationList) MarshalTo

func (m *MutatingWebhookConfigurationList) MarshalTo(dAtA []byte) (int, error)

func (*MutatingWebhookConfigurationList) MarshalToSizedBuffer

func (m *MutatingWebhookConfigurationList) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*MutatingWebhookConfigurationList) ProtoMessage

func (*MutatingWebhookConfigurationList) ProtoMessage()

func (*MutatingWebhookConfigurationList) Reset

func (*MutatingWebhookConfigurationList) Size

func (m *MutatingWebhookConfigurationList) Size() (n int)

func (*MutatingWebhookConfigurationList) String

func (*MutatingWebhookConfigurationList) Unmarshal

func (m *MutatingWebhookConfigurationList) Unmarshal(dAtA []byte) error

func (*MutatingWebhookConfigurationList) XXX_DiscardUnknown

func (m *MutatingWebhookConfigurationList) XXX_DiscardUnknown()

func (*MutatingWebhookConfigurationList) XXX_Marshal

func (m *MutatingWebhookConfigurationList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MutatingWebhookConfigurationList) XXX_Merge

func (*MutatingWebhookConfigurationList) XXX_Size

func (m *MutatingWebhookConfigurationList) XXX_Size() int

func (*MutatingWebhookConfigurationList) XXX_Unmarshal

func (m *MutatingWebhookConfigurationList) XXX_Unmarshal(b []byte) error

type Rule

type Rule struct {
	// APIGroups is the API groups the resources belong to. '*' is all groups.
	// If '*' is present, the length of the slice must be one.
	// Required.
	ApiGroups []string `protobuf:"bytes,1,rep,name=apiGroups" json:"apiGroups,omitempty"`
	// APIVersions is the API versions the resources belong to. '*' is all versions.
	// If '*' is present, the length of the slice must be one.
	// Required.
	ApiVersions []string `protobuf:"bytes,2,rep,name=apiVersions" json:"apiVersions,omitempty"`
	// Resources is a list of resources this rule applies to.
	//
	// For example:
	// 'pods' means pods.
	// 'pods/log' means the log subresource of pods.
	// '*' means all resources, but not subresources.
	// 'pods/*' means all subresources of pods.
	// '*/scale' means all scale subresources.
	// '*/*' means all resources and their subresources.
	//
	// If wildcard is present, the validation rule will ensure resources do not
	// overlap with each other.
	//
	// Depending on the enclosing object, subresources might not be allowed.
	// Required.
	Resources []string `protobuf:"bytes,3,rep,name=resources" json:"resources,omitempty"`
	// scope specifies the scope of this rule.
	// Valid values are "Cluster", "Namespaced", and "*"
	// "Cluster" means that only cluster-scoped resources will match this rule.
	// Namespace API objects are cluster-scoped.
	// "Namespaced" means that only namespaced resources will match this rule.
	// "*" means that there are no scope restrictions.
	// Subresources match the scope of their parent resource.
	// Default is "*".
	//
	// +optional
	Scope string `protobuf:"bytes,4,opt,name=scope" json:"scope"`
}

Rule is a tuple of APIGroups, APIVersion, and Resources.It is recommended to make sure that all the tuple expansions are valid.

func (*Rule) Descriptor

func (*Rule) Descriptor() ([]byte, []int)

func (*Rule) Equal

func (this *Rule) Equal(that interface{}) bool

func (*Rule) GetApiGroups

func (m *Rule) GetApiGroups() []string

func (*Rule) GetApiVersions

func (m *Rule) GetApiVersions() []string

func (*Rule) GetResources

func (m *Rule) GetResources() []string

func (*Rule) GetScope

func (m *Rule) GetScope() string

func (*Rule) GoString

func (this *Rule) GoString() string

func (*Rule) Marshal

func (m *Rule) Marshal() (dAtA []byte, err error)

func (*Rule) MarshalTo

func (m *Rule) MarshalTo(dAtA []byte) (int, error)

func (*Rule) MarshalToSizedBuffer

func (m *Rule) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*Rule) ProtoMessage

func (*Rule) ProtoMessage()

func (*Rule) Reset

func (m *Rule) Reset()

func (*Rule) Size

func (m *Rule) Size() (n int)

func (*Rule) String

func (this *Rule) String() string

func (*Rule) Unmarshal

func (m *Rule) Unmarshal(dAtA []byte) error

func (*Rule) XXX_DiscardUnknown

func (m *Rule) XXX_DiscardUnknown()

func (*Rule) XXX_Marshal

func (m *Rule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Rule) XXX_Merge

func (m *Rule) XXX_Merge(src proto.Message)

func (*Rule) XXX_Size

func (m *Rule) XXX_Size() int

func (*Rule) XXX_Unmarshal

func (m *Rule) XXX_Unmarshal(b []byte) error

type RuleWithOperations

type RuleWithOperations struct {
	// Operations is the operations the admission hook cares about - CREATE, UPDATE, or *
	// for all operations.
	// If '*' is present, the length of the slice must be one.
	// Required.
	Operations []string `protobuf:"bytes,1,rep,name=operations" json:"operations,omitempty"`
	// Rule is embedded, it describes other criteria of the rule, like
	// APIGroups, APIVersions, Resources, etc.
	Rule *Rule `protobuf:"bytes,2,opt,name=rule" json:"rule,omitempty"`
}

RuleWithOperations is a tuple of Operations and Resources. It is recommended to make sure that all the tuple expansions are valid.

func (*RuleWithOperations) Descriptor

func (*RuleWithOperations) Descriptor() ([]byte, []int)

func (*RuleWithOperations) Equal

func (this *RuleWithOperations) Equal(that interface{}) bool

func (*RuleWithOperations) GetOperations

func (m *RuleWithOperations) GetOperations() []string

func (*RuleWithOperations) GetRule

func (m *RuleWithOperations) GetRule() *Rule

func (*RuleWithOperations) GoString

func (this *RuleWithOperations) GoString() string

func (*RuleWithOperations) Marshal

func (m *RuleWithOperations) Marshal() (dAtA []byte, err error)

func (*RuleWithOperations) MarshalTo

func (m *RuleWithOperations) MarshalTo(dAtA []byte) (int, error)

func (*RuleWithOperations) MarshalToSizedBuffer

func (m *RuleWithOperations) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RuleWithOperations) ProtoMessage

func (*RuleWithOperations) ProtoMessage()

func (*RuleWithOperations) Reset

func (m *RuleWithOperations) Reset()

func (*RuleWithOperations) Size

func (m *RuleWithOperations) Size() (n int)

func (*RuleWithOperations) String

func (this *RuleWithOperations) String() string

func (*RuleWithOperations) Unmarshal

func (m *RuleWithOperations) Unmarshal(dAtA []byte) error

func (*RuleWithOperations) XXX_DiscardUnknown

func (m *RuleWithOperations) XXX_DiscardUnknown()

func (*RuleWithOperations) XXX_Marshal

func (m *RuleWithOperations) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RuleWithOperations) XXX_Merge

func (m *RuleWithOperations) XXX_Merge(src proto.Message)

func (*RuleWithOperations) XXX_Size

func (m *RuleWithOperations) XXX_Size() int

func (*RuleWithOperations) XXX_Unmarshal

func (m *RuleWithOperations) XXX_Unmarshal(b []byte) error

type ServiceReference

type ServiceReference struct {
	// `namespace` is the namespace of the service.
	// Required
	Namespace string `protobuf:"bytes,1,opt,name=namespace" json:"namespace"`
	// `name` is the name of the service.
	// Required
	Name string `protobuf:"bytes,2,opt,name=name" json:"name"`
	// `path` is an optional URL path which will be sent in any request to
	// this service.
	// +optional
	Path string `protobuf:"bytes,3,opt,name=path" json:"path"`
	// If specified, the port on the service that hosting webhook.
	// Default to 443 for backward compatibility.
	// `port` should be a valid port number (1-65535, inclusive).
	// +optional
	Port int32 `protobuf:"varint,4,opt,name=port" json:"port"`
}

ServiceReference holds a reference to Service.legacy.k8s.io

func (*ServiceReference) Descriptor

func (*ServiceReference) Descriptor() ([]byte, []int)

func (*ServiceReference) Equal

func (this *ServiceReference) Equal(that interface{}) bool

func (*ServiceReference) GetName

func (m *ServiceReference) GetName() string

func (*ServiceReference) GetNamespace

func (m *ServiceReference) GetNamespace() string

func (*ServiceReference) GetPath

func (m *ServiceReference) GetPath() string

func (*ServiceReference) GetPort

func (m *ServiceReference) GetPort() int32

func (*ServiceReference) GoString

func (this *ServiceReference) GoString() string

func (*ServiceReference) Marshal

func (m *ServiceReference) Marshal() (dAtA []byte, err error)

func (*ServiceReference) MarshalTo

func (m *ServiceReference) MarshalTo(dAtA []byte) (int, error)

func (*ServiceReference) MarshalToSizedBuffer

func (m *ServiceReference) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ServiceReference) ProtoMessage

func (*ServiceReference) ProtoMessage()

func (*ServiceReference) Reset

func (m *ServiceReference) Reset()

func (*ServiceReference) Size

func (m *ServiceReference) Size() (n int)

func (*ServiceReference) String

func (this *ServiceReference) String() string

func (*ServiceReference) Unmarshal

func (m *ServiceReference) Unmarshal(dAtA []byte) error

func (*ServiceReference) XXX_DiscardUnknown

func (m *ServiceReference) XXX_DiscardUnknown()

func (*ServiceReference) XXX_Marshal

func (m *ServiceReference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ServiceReference) XXX_Merge

func (m *ServiceReference) XXX_Merge(src proto.Message)

func (*ServiceReference) XXX_Size

func (m *ServiceReference) XXX_Size() int

func (*ServiceReference) XXX_Unmarshal

func (m *ServiceReference) XXX_Unmarshal(b []byte) error

type ValidatingWebhook

type ValidatingWebhook struct {
	// The name of the admission webhook.
	// Name should be fully qualified, e.g., imagepolicy.kubernetes.io, where
	// "imagepolicy" is the name of the webhook, and kubernetes.io is the name
	// of the organization.
	// Required.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name"`
	// ClientConfig defines how to communicate with the hook.
	// Required
	ClientConfig *WebhookClientConfig `protobuf:"bytes,2,opt,name=clientConfig" json:"clientConfig,omitempty"`
	// Rules describes what operations on what resources/subresources the webhook cares about.
	// The webhook cares about an operation if it matches _any_ Rule.
	// However, in order to prevent ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks
	// from putting the cluster in a state which cannot be recovered from without completely
	// disabling the plugin, ValidatingAdmissionWebhooks and MutatingAdmissionWebhooks are never called
	// on admission requests for ValidatingWebhookConfiguration and MutatingWebhookConfiguration objects.
	Rules []*RuleWithOperations `protobuf:"bytes,3,rep,name=rules" json:"rules,omitempty"`
	// FailurePolicy defines how unrecognized errors from the admission endpoint are handled -
	// allowed values are Ignore or Fail. Defaults to Ignore.
	// +optional
	FailurePolicy string `protobuf:"bytes,4,opt,name=failurePolicy" json:"failurePolicy"`
	// matchPolicy defines how the "rules" list is used to match incoming requests.
	// Allowed values are "Exact" or "Equivalent".
	//
	// - Exact: match a request only if it exactly matches a specified rule.
	// For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1,
	// but "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`,
	// a request to apps/v1beta1 or extensions/v1beta1 would not be sent to the webhook.
	//
	// - Equivalent: match a request if modifies a resource listed in rules, even via another API group or version.
	// For example, if deployments can be modified via apps/v1, apps/v1beta1, and extensions/v1beta1,
	// and "rules" only included `apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]`,
	// a request to apps/v1beta1 or extensions/v1beta1 would be converted to apps/v1 and sent to the webhook.
	//
	// Defaults to "Exact"
	// +optional
	MatchPolicy string `protobuf:"bytes,9,opt,name=matchPolicy" json:"matchPolicy"`
	// NamespaceSelector decides whether to run the webhook on an object based
	// on whether the namespace for that object matches the selector. If the
	// object itself is a namespace, the matching is performed on
	// object.metadata.labels. If the object is another cluster scoped resource,
	// it never skips the webhook.
	//
	// For example, to run the webhook on any objects whose namespace is not
	// associated with "runlevel" of "0" or "1";  you will set the selector as
	// follows:
	// "namespaceSelector": {
	//   "matchExpressions": [
	//     {
	//       "key": "runlevel",
	//       "operator": "NotIn",
	//       "values": [
	//         "0",
	//         "1"
	//       ]
	//     }
	//   ]
	// }
	//
	// If instead you want to only run the webhook on any objects whose
	// namespace is associated with the "environment" of "prod" or "staging";
	// you will set the selector as follows:
	// "namespaceSelector": {
	//   "matchExpressions": [
	//     {
	//       "key": "environment",
	//       "operator": "In",
	//       "values": [
	//         "prod",
	//         "staging"
	//       ]
	//     }
	//   ]
	// }
	//
	// See
	// https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
	// for more examples of label selectors.
	//
	// Default to the empty LabelSelector, which matches everything.
	// +optional
	NamespaceSelector *v1.LabelSelector `protobuf:"bytes,5,opt,name=namespaceSelector" json:"namespaceSelector,omitempty"`
	// ObjectSelector decides whether to run the webhook based on if the
	// object has matching labels. objectSelector is evaluated against both
	// the oldObject and newObject that would be sent to the webhook, and
	// is considered to match if either object matches the selector. A null
	// object (oldObject in the case of create, or newObject in the case of
	// delete) or an object that cannot have labels (like a
	// DeploymentRollback or a PodProxyOptions object) is not considered to
	// match.
	// Use the object selector only if the webhook is opt-in, because end
	// users may skip the admission webhook by setting the labels.
	// Default to the empty LabelSelector, which matches everything.
	// +optional
	ObjectSelector *v1.LabelSelector `protobuf:"bytes,10,opt,name=objectSelector" json:"objectSelector,omitempty"`
	// SideEffects states whether this webhookk has side effects.
	// Acceptable values are: Unknown, None, Some, NoneOnDryRun
	// Webhooks with side effects MUST implement a reconciliation system, since a request may be
	// rejected by a future step in the admission change and the side effects therefore need to be undone.
	// Requests with the dryRun attribute will be auto-rejected if they match a webhook with
	// sideEffects == Unknown or Some. Defaults to Unknown.
	// +optional
	SideEffects string `protobuf:"bytes,6,opt,name=sideEffects" json:"sideEffects"`
	// TimeoutSeconds specifies the timeout for this webhook. After the timeout passes,
	// the webhook call will be ignored or the API call will fail based on the
	// failure policy.
	// The timeout value must be between 1 and 30 seconds.
	// Default to 30 seconds.
	// +optional
	TimeoutSeconds int32 `protobuf:"varint,7,opt,name=timeoutSeconds" json:"timeoutSeconds"`
	// AdmissionReviewVersions is an ordered list of preferred `AdmissionReview`
	// versions the Webhook expects. API server will try to use first version in
	// the list which it supports. If none of the versions specified in this list
	// supported by API server, validation will fail for this object.
	// If a persisted webhook configuration specifies allowed versions and does not
	// include any versions known to the API Server, calls to the webhook will fail
	// and be subject to the failure policy.
	// Default to `['v1beta1']`.
	// +optional
	AdmissionReviewVersions []string `protobuf:"bytes,8,rep,name=admissionReviewVersions" json:"admissionReviewVersions,omitempty"`
}

ValidatingWebhook describes an admission webhook and the resources and operations it applies to.

func (*ValidatingWebhook) Descriptor

func (*ValidatingWebhook) Descriptor() ([]byte, []int)

func (*ValidatingWebhook) Equal

func (this *ValidatingWebhook) Equal(that interface{}) bool

func (*ValidatingWebhook) GetAdmissionReviewVersions

func (m *ValidatingWebhook) GetAdmissionReviewVersions() []string

func (*ValidatingWebhook) GetClientConfig

func (m *ValidatingWebhook) GetClientConfig() *WebhookClientConfig

func (*ValidatingWebhook) GetFailurePolicy

func (m *ValidatingWebhook) GetFailurePolicy() string

func (*ValidatingWebhook) GetMatchPolicy

func (m *ValidatingWebhook) GetMatchPolicy() string

func (*ValidatingWebhook) GetName

func (m *ValidatingWebhook) GetName() string

func (*ValidatingWebhook) GetNamespaceSelector

func (m *ValidatingWebhook) GetNamespaceSelector() *v1.LabelSelector

func (*ValidatingWebhook) GetObjectSelector

func (m *ValidatingWebhook) GetObjectSelector() *v1.LabelSelector

func (*ValidatingWebhook) GetRules

func (m *ValidatingWebhook) GetRules() []*RuleWithOperations

func (*ValidatingWebhook) GetSideEffects

func (m *ValidatingWebhook) GetSideEffects() string

func (*ValidatingWebhook) GetTimeoutSeconds

func (m *ValidatingWebhook) GetTimeoutSeconds() int32

func (*ValidatingWebhook) GoString

func (this *ValidatingWebhook) GoString() string

func (*ValidatingWebhook) Marshal

func (m *ValidatingWebhook) Marshal() (dAtA []byte, err error)

func (*ValidatingWebhook) MarshalTo

func (m *ValidatingWebhook) MarshalTo(dAtA []byte) (int, error)

func (*ValidatingWebhook) MarshalToSizedBuffer

func (m *ValidatingWebhook) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ValidatingWebhook) ProtoMessage

func (*ValidatingWebhook) ProtoMessage()

func (*ValidatingWebhook) Reset

func (m *ValidatingWebhook) Reset()

func (*ValidatingWebhook) Size

func (m *ValidatingWebhook) Size() (n int)

func (*ValidatingWebhook) String

func (this *ValidatingWebhook) String() string

func (*ValidatingWebhook) Unmarshal

func (m *ValidatingWebhook) Unmarshal(dAtA []byte) error

func (*ValidatingWebhook) XXX_DiscardUnknown

func (m *ValidatingWebhook) XXX_DiscardUnknown()

func (*ValidatingWebhook) XXX_Marshal

func (m *ValidatingWebhook) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidatingWebhook) XXX_Merge

func (m *ValidatingWebhook) XXX_Merge(src proto.Message)

func (*ValidatingWebhook) XXX_Size

func (m *ValidatingWebhook) XXX_Size() int

func (*ValidatingWebhook) XXX_Unmarshal

func (m *ValidatingWebhook) XXX_Unmarshal(b []byte) error

type ValidatingWebhookConfiguration

type ValidatingWebhookConfiguration struct {
	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata.
	// +optional
	Metadata *v1.ObjectMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// Webhooks is a list of webhooks and the affected resources and operations.
	// +optional
	// +patchMergeKey=name
	// +patchStrategy=merge
	Webhooks []*ValidatingWebhook `protobuf:"bytes,2,rep,name=Webhooks" json:"Webhooks,omitempty"`
}

ValidatingWebhookConfiguration describes the configuration of and admission webhook that accept or reject and object without changing it. Deprecated in v1.16, planned for removal in v1.19. Use admissionregistration.k8s.io/v1 ValidatingWebhookConfiguration instead.

func (*ValidatingWebhookConfiguration) Descriptor

func (*ValidatingWebhookConfiguration) Descriptor() ([]byte, []int)

func (*ValidatingWebhookConfiguration) Equal

func (this *ValidatingWebhookConfiguration) Equal(that interface{}) bool

func (*ValidatingWebhookConfiguration) GetMetadata

func (m *ValidatingWebhookConfiguration) GetMetadata() *v1.ObjectMeta

func (*ValidatingWebhookConfiguration) GetWebhooks

func (*ValidatingWebhookConfiguration) GoString

func (this *ValidatingWebhookConfiguration) GoString() string

func (*ValidatingWebhookConfiguration) Marshal

func (m *ValidatingWebhookConfiguration) Marshal() (dAtA []byte, err error)

func (*ValidatingWebhookConfiguration) MarshalTo

func (m *ValidatingWebhookConfiguration) MarshalTo(dAtA []byte) (int, error)

func (*ValidatingWebhookConfiguration) MarshalToSizedBuffer

func (m *ValidatingWebhookConfiguration) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ValidatingWebhookConfiguration) ProtoMessage

func (*ValidatingWebhookConfiguration) ProtoMessage()

func (*ValidatingWebhookConfiguration) Reset

func (m *ValidatingWebhookConfiguration) Reset()

func (*ValidatingWebhookConfiguration) Size

func (m *ValidatingWebhookConfiguration) Size() (n int)

func (*ValidatingWebhookConfiguration) String

func (this *ValidatingWebhookConfiguration) String() string

func (*ValidatingWebhookConfiguration) Unmarshal

func (m *ValidatingWebhookConfiguration) Unmarshal(dAtA []byte) error

func (*ValidatingWebhookConfiguration) XXX_DiscardUnknown

func (m *ValidatingWebhookConfiguration) XXX_DiscardUnknown()

func (*ValidatingWebhookConfiguration) XXX_Marshal

func (m *ValidatingWebhookConfiguration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidatingWebhookConfiguration) XXX_Merge

func (m *ValidatingWebhookConfiguration) XXX_Merge(src proto.Message)

func (*ValidatingWebhookConfiguration) XXX_Size

func (m *ValidatingWebhookConfiguration) XXX_Size() int

func (*ValidatingWebhookConfiguration) XXX_Unmarshal

func (m *ValidatingWebhookConfiguration) XXX_Unmarshal(b []byte) error

type ValidatingWebhookConfigurationList

type ValidatingWebhookConfigurationList struct {
	// Standard list metadata.
	// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
	// +optional
	Metadata *v1.ListMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// List of ValidatingWebhookConfiguration.
	Items []*ValidatingWebhookConfiguration `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
}

ValidatingWebhookConfigurationList is a list of ValidatingWebhookConfiguration.

func (*ValidatingWebhookConfigurationList) Descriptor

func (*ValidatingWebhookConfigurationList) Descriptor() ([]byte, []int)

func (*ValidatingWebhookConfigurationList) Equal

func (this *ValidatingWebhookConfigurationList) Equal(that interface{}) bool

func (*ValidatingWebhookConfigurationList) GetItems

func (*ValidatingWebhookConfigurationList) GetMetadata

func (*ValidatingWebhookConfigurationList) GoString

func (this *ValidatingWebhookConfigurationList) GoString() string

func (*ValidatingWebhookConfigurationList) Marshal

func (m *ValidatingWebhookConfigurationList) Marshal() (dAtA []byte, err error)

func (*ValidatingWebhookConfigurationList) MarshalTo

func (m *ValidatingWebhookConfigurationList) MarshalTo(dAtA []byte) (int, error)

func (*ValidatingWebhookConfigurationList) MarshalToSizedBuffer

func (m *ValidatingWebhookConfigurationList) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ValidatingWebhookConfigurationList) ProtoMessage

func (*ValidatingWebhookConfigurationList) ProtoMessage()

func (*ValidatingWebhookConfigurationList) Reset

func (*ValidatingWebhookConfigurationList) Size

func (*ValidatingWebhookConfigurationList) String

func (*ValidatingWebhookConfigurationList) Unmarshal

func (m *ValidatingWebhookConfigurationList) Unmarshal(dAtA []byte) error

func (*ValidatingWebhookConfigurationList) XXX_DiscardUnknown

func (m *ValidatingWebhookConfigurationList) XXX_DiscardUnknown()

func (*ValidatingWebhookConfigurationList) XXX_Marshal

func (m *ValidatingWebhookConfigurationList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ValidatingWebhookConfigurationList) XXX_Merge

func (*ValidatingWebhookConfigurationList) XXX_Size

func (*ValidatingWebhookConfigurationList) XXX_Unmarshal

func (m *ValidatingWebhookConfigurationList) XXX_Unmarshal(b []byte) error

type WebhookClientConfig

type WebhookClientConfig struct {
	// `url` gives the location of the webhook, in standard URL form
	// (`scheme://host:port/path`). Exactly one of `url` or `service`
	// must be specified.
	//
	// The `host` should not refer to a service running in the cluster; use
	// the `service` field instead. The host might be resolved via external
	// DNS in some apiservers (e.g., `kube-apiserver` cannot resolve
	// in-cluster DNS as that would be a layering violation). `host` may
	// also be an IP address.
	//
	// Please note that using `localhost` or `127.0.0.1` as a `host` is
	// risky unless you take great care to run this webhook on all hosts
	// which run an apiserver which might need to make calls to this
	// webhook. Such installs are likely to be non-portable, i.e., not easy
	// to turn up in a new cluster.
	//
	// The scheme must be "https"; the URL must begin with "https://".
	//
	// A path is optional, and if present may be any string permissible in
	// a URL. You may use the path to pass an arbitrary string to the
	// webhook, for example, a cluster identifier.
	//
	// Attempting to use a user or basic auth e.g. "user:password@" is not
	// allowed. Fragments ("#...") and query parameters ("?...") are not
	// allowed, either.
	//
	// +optional
	Url string `protobuf:"bytes,3,opt,name=url" json:"url"`
	// `service` is a reference to the service for this webhook. Either
	// `service` or `url` must be specified.
	//
	// If the webhook is running within the cluster, then you should use `service`.
	//
	// +optional
	Service *ServiceReference `protobuf:"bytes,1,opt,name=service" json:"service,omitempty"`
	// `caBundle` is a PEM encoded CA bundle which will be used to validate the webhook's server certificate.
	// If unspecified, system trust roots on the apiserver are used.
	// +optional
	CaBundle []byte `protobuf:"bytes,2,opt,name=caBundle" json:"caBundle"`
}

WebhookClientConfig contains the information to make a TLS connection with the webhook

func (*WebhookClientConfig) Descriptor

func (*WebhookClientConfig) Descriptor() ([]byte, []int)

func (*WebhookClientConfig) Equal

func (this *WebhookClientConfig) Equal(that interface{}) bool

func (*WebhookClientConfig) GetCaBundle

func (m *WebhookClientConfig) GetCaBundle() []byte

func (*WebhookClientConfig) GetService

func (m *WebhookClientConfig) GetService() *ServiceReference

func (*WebhookClientConfig) GetUrl

func (m *WebhookClientConfig) GetUrl() string

func (*WebhookClientConfig) GoString

func (this *WebhookClientConfig) GoString() string

func (*WebhookClientConfig) Marshal

func (m *WebhookClientConfig) Marshal() (dAtA []byte, err error)

func (*WebhookClientConfig) MarshalTo

func (m *WebhookClientConfig) MarshalTo(dAtA []byte) (int, error)

func (*WebhookClientConfig) MarshalToSizedBuffer

func (m *WebhookClientConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*WebhookClientConfig) ProtoMessage

func (*WebhookClientConfig) ProtoMessage()

func (*WebhookClientConfig) Reset

func (m *WebhookClientConfig) Reset()

func (*WebhookClientConfig) Size

func (m *WebhookClientConfig) Size() (n int)

func (*WebhookClientConfig) String

func (this *WebhookClientConfig) String() string

func (*WebhookClientConfig) Unmarshal

func (m *WebhookClientConfig) Unmarshal(dAtA []byte) error

func (*WebhookClientConfig) XXX_DiscardUnknown

func (m *WebhookClientConfig) XXX_DiscardUnknown()

func (*WebhookClientConfig) XXX_Marshal

func (m *WebhookClientConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*WebhookClientConfig) XXX_Merge

func (m *WebhookClientConfig) XXX_Merge(src proto.Message)

func (*WebhookClientConfig) XXX_Size

func (m *WebhookClientConfig) XXX_Size() int

func (*WebhookClientConfig) XXX_Unmarshal

func (m *WebhookClientConfig) XXX_Unmarshal(b []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL