Documentation
¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API.
Package v1alpha1 contains API Schema definitions for the policy.openservicemesh.io v1alpha1 API group
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type BackendSpec
- type Egress
- type EgressList
- type EgressSourceSpec
- type EgressSpec
- type IngressBackend
- type IngressBackendList
- type IngressBackendSpec
- type IngressBackendStatus
- type IngressSourceSpec
- type PortSpec
- type TLSSpec
Constants ¶
const ( // KindService is the kind corresponding to a Service resource. KindService = "Service" // KindAuthenticatedPrincipal is the kind corresponding to an authenticated principal. KindAuthenticatedPrincipal = "AuthenticatedPrincipal" // KindIPRange is the kind corresponding to an IP address range represented in CIDR notation. KindIPRange = "IPRange" )
Variables ¶
var ( // SchemeGroupVersion is group version used to register API objects in the policy.openservicemesh.io v1alpha1 API group SchemeGroupVersion = schema.GroupVersion{ Group: "policy.openservicemesh.io", Version: "v1alpha1", } // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme adds all Resources to the Scheme AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type BackendSpec ¶ added in v0.10.0
type BackendSpec struct { // Name defines the name of the backend. Name string `json:"name"` // Port defines the specification for the backend's port. Port PortSpec `json:"port"` // TLS defines the specification for the backend's TLS configuration. // +optional TLS TLSSpec `json:"tls,omitempty"` }
BackendSpec is the type used to represent a Backend specified in the IngressBackend policy specification.
func (*BackendSpec) DeepCopy ¶ added in v0.10.0
func (in *BackendSpec) DeepCopy() *BackendSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendSpec.
func (*BackendSpec) DeepCopyInto ¶ added in v0.10.0
func (in *BackendSpec) DeepCopyInto(out *BackendSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Egress ¶
type Egress struct { // Object's type metadata metav1.TypeMeta `json:",inline"` // Object's metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // Spec is the Egress policy specification // +optional Spec EgressSpec `json:"spec,omitempty"` }
Egress is the type used to represent an Egress traffic policy. An Egress policy allows applications to access endpoints external to the service mesh or cluster based on the specified rules in the policy. +genclient +genclient:noStatus +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*Egress) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Egress.
func (*Egress) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Egress) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EgressList ¶
type EgressList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Egress `json:"items"` }
EgressList defines the list of Egress objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*EgressList) DeepCopy ¶
func (in *EgressList) DeepCopy() *EgressList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressList.
func (*EgressList) DeepCopyInto ¶
func (in *EgressList) DeepCopyInto(out *EgressList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EgressList) DeepCopyObject ¶
func (in *EgressList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EgressSourceSpec ¶ added in v0.10.0
type EgressSourceSpec struct { // Kind defines the kind for the source in the Egress policy, ex. ServiceAccount. Kind string `json:"kind"` // Name defines the name of the source for the given Kind. Name string `json:"name"` // Namespace defines the namespace for the given source. Namespace string `json:"namespace"` }
EgressSourceSpec is the type used to represent the Source in the list of Sources specified in an Egress policy specification.
func (*EgressSourceSpec) DeepCopy ¶ added in v0.10.0
func (in *EgressSourceSpec) DeepCopy() *EgressSourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressSourceSpec.
func (*EgressSourceSpec) DeepCopyInto ¶ added in v0.10.0
func (in *EgressSourceSpec) DeepCopyInto(out *EgressSourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EgressSpec ¶
type EgressSpec struct { // Sources defines the list of sources the Egress policy applies to. Sources []EgressSourceSpec `json:"sources"` // Hosts defines the list of external hosts the Egress policy will allow // access to. // // - For HTTP traffic, the HTTP Host/Authority header is matched against the // list of Hosts specified. // // - For HTTPS traffic, the Server Name Indication (SNI) indicated by the client // in the TLS handshake is matched against the list of Hosts specified. // // - For non-HTTP(s) based protocols, the Hosts field is ignored. // +optional Hosts []string `json:"hosts,omitempty"` // IPAddresses defines the list of external IP address ranges the Egress policy // applies to. The destination IP address of the traffic is matched against the // list of IPAddresses specified as a CIDR range. // +optional IPAddresses []string `json:"ipAddresses,omitempty"` // Ports defines the list of ports the Egress policy is applies to. // The destination port of the traffic is matched against the list of Ports specified. Ports []PortSpec `json:"ports"` // Matches defines the list of object references the Egress policy should match on. // +optional Matches []corev1.TypedLocalObjectReference `json:"matches,omitempty"` }
EgressSpec is the type used to represent the Egress policy specification.
func (*EgressSpec) DeepCopy ¶
func (in *EgressSpec) DeepCopy() *EgressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressSpec.
func (*EgressSpec) DeepCopyInto ¶
func (in *EgressSpec) DeepCopyInto(out *EgressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressBackend ¶ added in v0.10.0
type IngressBackend struct { // Object's type metadata metav1.TypeMeta `json:",inline"` // Object's metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // Spec is the Ingress backend policy specification // +optional Spec IngressBackendSpec `json:"spec,omitempty"` // Status is the status of the IngressBackend configuration. // +optional Status IngressBackendStatus `json:"status,omitempty"` }
IngressBackend is the type used to represent an Ingress backend policy. An Ingress backend policy authorizes one or more backends to accept ingress traffic from one or more sources. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*IngressBackend) DeepCopy ¶ added in v0.10.0
func (in *IngressBackend) DeepCopy() *IngressBackend
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackend.
func (*IngressBackend) DeepCopyInto ¶ added in v0.10.0
func (in *IngressBackend) DeepCopyInto(out *IngressBackend)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressBackend) DeepCopyObject ¶ added in v0.10.0
func (in *IngressBackend) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressBackendList ¶ added in v0.10.0
type IngressBackendList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []IngressBackend `json:"items"` }
IngressBackendList defines the list of IngressBackend objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*IngressBackendList) DeepCopy ¶ added in v0.10.0
func (in *IngressBackendList) DeepCopy() *IngressBackendList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendList.
func (*IngressBackendList) DeepCopyInto ¶ added in v0.10.0
func (in *IngressBackendList) DeepCopyInto(out *IngressBackendList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressBackendList) DeepCopyObject ¶ added in v0.10.0
func (in *IngressBackendList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressBackendSpec ¶ added in v0.10.0
type IngressBackendSpec struct { // Backends defines the list of backends the IngressBackend policy applies to. Backends []BackendSpec `json:"backends"` // Sources defines the list of sources the IngressBackend policy applies to. Sources []IngressSourceSpec `json:"sources"` // Matches defines the list of object references the IngressBackend policy should match on. // +optional Matches []corev1.TypedLocalObjectReference `json:"matches,omitempty"` }
IngressBackendSpec is the type used to represent the IngressBackend policy specification.
func (*IngressBackendSpec) DeepCopy ¶ added in v0.10.0
func (in *IngressBackendSpec) DeepCopy() *IngressBackendSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendSpec.
func (*IngressBackendSpec) DeepCopyInto ¶ added in v0.10.0
func (in *IngressBackendSpec) DeepCopyInto(out *IngressBackendSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressBackendStatus ¶ added in v0.10.0
type IngressBackendStatus struct { // CurrentStatus defines the current status of an IngressBackend resource. // +optional CurrentStatus string `json:"currentStatus,omitempty"` // Reason defines the reason for the current status of an IngressBackend resource. // +optional Reason string `json:"reason,omitempty"` }
IngressBackendStatus is the type used to represent the status of an IngressBackend resource.
func (*IngressBackendStatus) DeepCopy ¶ added in v0.10.0
func (in *IngressBackendStatus) DeepCopy() *IngressBackendStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressBackendStatus.
func (*IngressBackendStatus) DeepCopyInto ¶ added in v0.10.0
func (in *IngressBackendStatus) DeepCopyInto(out *IngressBackendStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressSourceSpec ¶ added in v0.10.0
type IngressSourceSpec struct { // Kind defines the kind for the source in the IngressBackend policy. Kind string `json:"kind"` // Name defines the name of the source for the given Kind. Name string `json:"name"` // Namespace defines the namespace for the given source. // +optional Namespace string `json:"namespace,omitempty"` }
IngressSourceSpec is the type used to represent the Source in the list of Sources specified in an IngressBackend policy specification.
func (*IngressSourceSpec) DeepCopy ¶ added in v0.10.0
func (in *IngressSourceSpec) DeepCopy() *IngressSourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSourceSpec.
func (*IngressSourceSpec) DeepCopyInto ¶ added in v0.10.0
func (in *IngressSourceSpec) DeepCopyInto(out *IngressSourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PortSpec ¶
type PortSpec struct { // Number defines the port number. Number int `json:"number"` // Protocol defines the protocol served by the port. Protocol string `json:"protocol"` }
PortSpec is the type used to represent the Port in the list of Ports specified in an Egress policy specification.
func (*PortSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortSpec.
func (*PortSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSSpec ¶ added in v0.10.0
type TLSSpec struct { // SkipClientCertValidation defines whether the backend should skip validating the // certificate presented by the client. SkipClientCertValidation bool `json:"skipClientCertValidation"` // SNIHosts defines the SNI hostnames that the backend allows the client to connect to. // +optional SNIHosts []string `json:"sniHosts,omitempty"` }
TLSSpec is the type used to represent the backend's TLS configuration.
func (*TLSSpec) DeepCopy ¶ added in v0.10.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSSpec.
func (*TLSSpec) DeepCopyInto ¶ added in v0.10.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.