Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // SchemeBuilder collects functions that add things to a scheme. It's to allow // code to compile without explicitly referencing generated types. You should // declare one in each package that will have generated deep copy or conversion // functions. SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme applies all the stored functions to the scheme. A non-nil error // indicates that one function failed and the attempt was abandoned. AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{ Group: ts.GroupName, Version: "v1alpha1", }
SchemeGroupVersion is the identifier for the API which includes the name of the group and the version of the API
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type IdentityBindingSubject ¶
type IdentityBindingSubject struct { // Kind is the type of Subject to allow ingress (ServiceAccount | Group) Kind string `json:"kind" protobuf:"bytes,1,name=kind"` // Name of the Subject, i.e. ServiceAccountName Name string `json:"name" protobuf:"bytes,2,name=name"` // Namespace where the Subject is deployed Namespace string `json:"namespace,omitempty" protobuf:"bytes,3,opt,name=namespace"` // Port defines a TCP port to apply the TrafficTarget to Port string `json:"port,omitempty" protobuf:"bytes,4,opt,name=port"` }
IdentityBindingSubject is a Kubernetes objects which should be allowed access to the TrafficTarget
func (*IdentityBindingSubject) DeepCopy ¶
func (in *IdentityBindingSubject) DeepCopy() *IdentityBindingSubject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityBindingSubject.
func (*IdentityBindingSubject) DeepCopyInto ¶
func (in *IdentityBindingSubject) DeepCopyInto(out *IdentityBindingSubject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Status ¶
type Status string
Status of the resource
const ( // StatusPending is set when the resource is pending creation StatusPending Status = "Pending" // StatusCreated is set when the resource has been successfully created StatusCreated Status = "Created" // StatusError is set when a fatal error has occured during the creation of // the resource StatusError Status = "Error" )
type TrafficTarget ¶
type TrafficTarget struct { metav1.TypeMeta `json:",inline"` // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata // +optional metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Most recently observed status of the object. // This data may not be up to date. // Populated by the system. // Read-only. // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status // +optional Status Status `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"` // Selector is the pod or group of pods to allow ingress traffic Destination IdentityBindingSubject `json:"destination" protobuf:"bytes,3,name=destination"` // Sources are the pod or group of pods to allow ingress traffic Sources []IdentityBindingSubject `json:"sources" protobuf:"bytes,4,name=sources"` // Rules are the traffic rules to allow (HTTPRoutes | TCPRoute), Specs []TrafficTargetSpec `json:"specs" protobuf:"bytes,5,name=specs"` }
TrafficTarget associates a set of traffic definitions (rules) with a service identity which is allocated to a group of pods. Access is controlled via referenced TrafficSpecs and by a list of source service identities.
- If a pod which holds the referenced service identity makes a call to the destination on one of the defined routes then access will be allowed
- Any pod which attempts to connect and is not in the defined list of sources will be denied
- Any pod which is in the defined list, but attempts to connect on a route which is not in the list of the TrafficSpecs will be denied
func (*TrafficTarget) DeepCopy ¶
func (in *TrafficTarget) DeepCopy() *TrafficTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficTarget.
func (*TrafficTarget) DeepCopyInto ¶
func (in *TrafficTarget) DeepCopyInto(out *TrafficTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficTarget) DeepCopyObject ¶
func (in *TrafficTarget) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficTargetList ¶
type TrafficTargetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []TrafficTarget `json:"items"` }
TrafficTargetList satisfy K8s code gen requirements
func (*TrafficTargetList) DeepCopy ¶
func (in *TrafficTargetList) DeepCopy() *TrafficTargetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficTargetList.
func (*TrafficTargetList) DeepCopyInto ¶
func (in *TrafficTargetList) DeepCopyInto(out *TrafficTargetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficTargetList) DeepCopyObject ¶
func (in *TrafficTargetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficTargetSpec ¶
type TrafficTargetSpec struct { // Kind is the kind of TrafficSpec to allow Kind string `json:"kind" protobuf:"bytes,1,name=kind"` // Name of the TrafficSpec to use Name string `json:"name" protobuf:"bytes,2,name=name"` // Matches is a list of TrafficSpec routes to allow traffic for Matches []string `json:"matches,omitempty" protobuf:"bytes,3,opt,name=matches"` }
TrafficTargetSpec is the TrafficSpec to allow for a TrafficTarget
func (*TrafficTargetSpec) DeepCopy ¶
func (in *TrafficTargetSpec) DeepCopy() *TrafficTargetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficTargetSpec.
func (*TrafficTargetSpec) DeepCopyInto ¶
func (in *TrafficTargetSpec) DeepCopyInto(out *TrafficTargetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.