Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the ipam v1alpha1 API group
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{Group: "ipam.liqo.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var ( // IPKind is the kind name used to register the IP CRD. IPKind = "IP" // IPResource is the resource name used to register the IP CRD. IPResource = "ips" // IPGroupVersionResource is the group version resource used to register IP CRD. IPGroupVersionResource = SchemeGroupVersion.WithResource(IPResource) // IPGroupResource is the group resource used to register IP CRD. IPGroupResource = schema.GroupResource{Group: SchemeGroupVersion.Group, Resource: IPResource} )
var ( // NetworkKind is the kind name used to register the Network CRD. NetworkKind = "Network" // NetworkResource is the resource name used to register the Network CRD. NetworkResource = "networks" // NetworkGroupVersionResource is the group version resource used to register the Network CRD. NetworkGroupVersionResource = SchemeGroupVersion.WithResource(NetworkResource) // NetworkGroupResource is the group resource used to register the Network CRD. NetworkGroupResource = schema.GroupResource{Group: SchemeGroupVersion.Group, Resource: NetworkResource} )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource.
Types ¶
type IP ¶
type IP struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IPSpec `json:"spec"` Status IPStatus `json:"status,omitempty"` }
IP is the Schema for the IP API.
func (*IP) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IP.
func (*IP) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IP) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IPList ¶
type IPList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IP `json:"items"` }
IPList contains a list of IP.
func (*IPList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPList.
func (*IPList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IPList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IPSpec ¶
type IPSpec struct { // IP is the local IP. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="IP field is immutable" IP networkingv1beta1.IP `json:"ip"` // NetworkRef is the reference to the Network CR containing the CIDR where the desired IP should be allocated from. // It is optional, if left empty the IP will be allocated in a default network CIDR (e.g., external CIDR). // +kubebuilder:validation:Optional NetworkRef *v1.ObjectReference `json:"networkRef,omitempty"` // ServiceTemplate contains the template to create the associated service (and endpointslice) for the IP endopoint. // If empty the creation of the service is disabled (default). // +kubebuilder:validation:Optional ServiceTemplate *ServiceTemplate `json:"serviceTemplate,omitempty"` // Masquerade is a flag to enable masquerade for the local IP on nodes. // If empty the masquerade is disabled. // +kubebuilder:validation:Optional Masquerade *bool `json:"masquerade,omitempty"` }
IPSpec defines a local IP.
func (*IPSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPSpec.
func (*IPSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPStatus ¶
type IPStatus struct { // IP is the remapped IP. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="IP field is immutable" IP networkingv1beta1.IP `json:"ip,omitempty"` // CIDR is the network CIDR where the IP is allocated. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="CIDR field is immutable" CIDR networkingv1beta1.CIDR `json:"cidr,omitempty"` }
IPStatus defines remapped IPs.
func (*IPStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPStatus.
func (*IPStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Network ¶
type Network struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NetworkSpec `json:"spec"` Status NetworkStatus `json:"status,omitempty"` }
Network is the Schema for the Network API.
func (*Network) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.
func (*Network) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Network) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NetworkList ¶
type NetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Network `json:"items"` }
NetworkList contains a list of Network.
func (*NetworkList) DeepCopy ¶
func (in *NetworkList) DeepCopy() *NetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkList.
func (*NetworkList) DeepCopyInto ¶
func (in *NetworkList) DeepCopyInto(out *NetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkList) DeepCopyObject ¶
func (in *NetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NetworkSpec ¶
type NetworkSpec struct { // CIDR is the desired CIDR for the remote cluster. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="CIDR field is immutable" CIDR networkingv1beta1.CIDR `json:"cidr"` // PreAllocated is the number of IPs to pre-allocate (reserve) in the CIDR, starting from the first IP. // +kubebuilder:validation:Optional // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="PreAllocated field is immutable" PreAllocated uint32 `json:"preAllocated"` }
NetworkSpec defines the desired state of Network.
func (*NetworkSpec) DeepCopy ¶
func (in *NetworkSpec) DeepCopy() *NetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpec.
func (*NetworkSpec) DeepCopyInto ¶
func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkStatus ¶
type NetworkStatus struct { // CIDR is the remapped CIDR for the remote cluster. CIDR networkingv1beta1.CIDR `json:"cidr,omitempty"` }
NetworkStatus defines the observed state of Network.
func (*NetworkStatus) DeepCopy ¶
func (in *NetworkStatus) DeepCopy() *NetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkStatus.
func (*NetworkStatus) DeepCopyInto ¶
func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceTemplate ¶
type ServiceTemplate struct { // Metadata of the Service. Metadata metav1.ObjectMeta `json:"metadata,omitempty"` // Template Spec of the Service. Spec v1.ServiceSpec `json:"spec,omitempty"` }
ServiceTemplate contains the template to create the associated service (and endpointslice) for the IP endopoint.
func (*ServiceTemplate) DeepCopy ¶
func (in *ServiceTemplate) DeepCopy() *ServiceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceTemplate.
func (*ServiceTemplate) DeepCopyInto ¶
func (in *ServiceTemplate) DeepCopyInto(out *ServiceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.