Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the ipam v1alpha1 API group +kubebuilder:object:generate=true +groupName=ipam.routerd.net
Index ¶
Constants ¶
const (
IPLeaseBound = "Bound"
)
IPLease Condition Types
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "ipam.routerd.net", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type IPLease ¶
type IPLease struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IPLeaseSpec `json:"spec,omitempty"` Status IPLeaseStatus `json:"status,omitempty"` }
IPLease is the Schema for the ipleases API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Addresses",type="string",JSONPath=".status.addresses" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*IPLease) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPLease.
func (*IPLease) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IPLease) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*IPLease) HasExpired ¶
type IPLeaseList ¶
type IPLeaseList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IPLease `json:"items"` }
IPLeaseList contains a list of IPLease +kubebuilder:object:root=true
func (*IPLeaseList) DeepCopy ¶
func (in *IPLeaseList) DeepCopy() *IPLeaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPLeaseList.
func (*IPLeaseList) DeepCopyInto ¶
func (in *IPLeaseList) DeepCopyInto(out *IPLeaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IPLeaseList) DeepCopyObject ¶
func (in *IPLeaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IPLeaseSpec ¶
type IPLeaseSpec struct { // References the pool to lease an IP from. Pool LocalObjectReference `json:"pool"` // Static IP lease settings. Static *StaticIPLease `json:"static,omitempty"` // IPFamilies that this lease should include. IPFamilies []corev1.IPFamily `json:"ipFamilies"` // Renew time is the time when the lease holder has last updated the lease. // Falls back to .metadata.creationTimestamp if not set. RenewTime metav1.MicroTime `json:"renewTime,omitempty"` }
IPLeaseSpec defines the desired state of IPLease
func (*IPLeaseSpec) DeepCopy ¶
func (in *IPLeaseSpec) DeepCopy() *IPLeaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPLeaseSpec.
func (*IPLeaseSpec) DeepCopyInto ¶
func (in *IPLeaseSpec) DeepCopyInto(out *IPLeaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPLeaseStatus ¶
type IPLeaseStatus struct { // The most recent generation observed by the controller. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions is a list of status conditions ths object is in. Conditions []metav1.Condition `json:"conditions,omitempty"` // Human readable status aggregated from conditions. Phase string `json:"phase,omitempty"` // List of leased addresses. Addresses []string `json:"addresses,omitempty"` // Duration of the lease, if empty lease does not expire. LeaseDuration *metav1.Duration `json:"leaseDuration,omitempty"` }
IPLeaseStatus defines the observed state of IPLease
func (*IPLeaseStatus) DeepCopy ¶
func (in *IPLeaseStatus) DeepCopy() *IPLeaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPLeaseStatus.
func (*IPLeaseStatus) DeepCopyInto ¶
func (in *IPLeaseStatus) DeepCopyInto(out *IPLeaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPPool ¶
type IPPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec IPPoolSpec `json:"spec,omitempty"` Status IPPoolStatus `json:"status,omitempty"` }
IPPool is the Schema for the ippools API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="IPv4 Available",type="integer",JSONPath=".status.ipv4.availableIPs" +kubebuilder:printcolumn:name="IPv4 Allocated",type="integer",JSONPath=".status.ipv4.allocatedIPs" +kubebuilder:printcolumn:name="IPv6 Available",type="integer",JSONPath=".status.ipv6.availableIPs" +kubebuilder:printcolumn:name="IPv6 Allocated",type="integer",JSONPath=".status.ipv6.allocatedIPs" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"
func (*IPPool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPool.
func (*IPPool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IPPool) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IPPoolList ¶
type IPPoolList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []IPPool `json:"items"` }
IPPoolList contains a list of IPPool +kubebuilder:object:root=true
func (*IPPoolList) DeepCopy ¶
func (in *IPPoolList) DeepCopy() *IPPoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPoolList.
func (*IPPoolList) DeepCopyInto ¶
func (in *IPPoolList) DeepCopyInto(out *IPPoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IPPoolList) DeepCopyObject ¶
func (in *IPPoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IPPoolSpec ¶
type IPPoolSpec struct { // IPv4 addresss pool IPv4 *IPTypePool `json:"ipv4,omitempty"` // IPv6 addresss pool IPv6 *IPTypePool `json:"ipv6,omitempty"` // lease duration for leased ips. // Lease must be renewed in time or it will be reclaimed into the pool. LeaseDuration *metav1.Duration `json:"leaseDuration,omitempty"` }
IPPoolSpec defines the desired state of IPPool
func (*IPPoolSpec) DeepCopy ¶
func (in *IPPoolSpec) DeepCopy() *IPPoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPoolSpec.
func (*IPPoolSpec) DeepCopyInto ¶
func (in *IPPoolSpec) DeepCopyInto(out *IPPoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPPoolStatus ¶
type IPPoolStatus struct { IPv4 *IPTypePoolStatus `json:"ipv4,omitempty"` IPv6 *IPTypePoolStatus `json:"ipv6,omitempty"` }
IPPoolStatus defines the observed state of IPPool
func (*IPPoolStatus) DeepCopy ¶
func (in *IPPoolStatus) DeepCopy() *IPPoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPoolStatus.
func (*IPPoolStatus) DeepCopyInto ¶
func (in *IPPoolStatus) DeepCopyInto(out *IPPoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPTypePool ¶
type IPTypePool struct {
CIDR string `json:"cidr"`
}
IP address pool configuration.
func (*IPTypePool) DeepCopy ¶
func (in *IPTypePool) DeepCopy() *IPTypePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPTypePool.
func (*IPTypePool) DeepCopyInto ¶
func (in *IPTypePool) DeepCopyInto(out *IPTypePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPTypePoolStatus ¶
type IPTypePoolStatus struct { // Number of all IPs available in the subnet. AvailableIPs int `json:"availableIPs"` // Number of allocated IPs in the subnet. (includes Network/Broadcast) AllocatedIPs int `json:"allocatedIPs"` }
func (*IPTypePoolStatus) DeepCopy ¶
func (in *IPTypePoolStatus) DeepCopy() *IPTypePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPTypePoolStatus.
func (*IPTypePoolStatus) DeepCopyInto ¶
func (in *IPTypePoolStatus) DeepCopyInto(out *IPTypePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalObjectReference ¶
type LocalObjectReference struct {
Name string `json:"name"`
}
func (*LocalObjectReference) DeepCopy ¶
func (in *LocalObjectReference) DeepCopy() *LocalObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalObjectReference.
func (*LocalObjectReference) DeepCopyInto ¶
func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaticIPLease ¶
type StaticIPLease struct { // List of addresses to try to lease from the pool. Addresses []string `json:"addresses"` }
func (*StaticIPLease) DeepCopy ¶
func (in *StaticIPLease) DeepCopy() *StaticIPLease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaticIPLease.
func (*StaticIPLease) DeepCopyInto ¶
func (in *StaticIPLease) DeepCopyInto(out *StaticIPLease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.