Documentation ¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API. +groupName=flipop.digitalocean.com
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type DNSRecordSet
- type FloatingIPPool
- type FloatingIPPoolList
- type FloatingIPPoolSpec
- type FloatingIPPoolStatus
- type IPState
- type IPStatus
- type Match
- type NodeDNSRecordSet
- type NodeDNSRecordSetList
- type NodeDNSRecordSetSpec
- type NodeDNSRecordSetStatus
- type NodeDNSRecordState
Constants ¶
const ( // GroupName is the group name used in this package. GroupName string = "flipop.digitalocean.com" // GroupVersion is the version. GroupVersion string = "v1alpha1" )
Variables ¶
var ( // SchemeGroupVersion is the group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{ Group: GroupName, Version: GroupVersion, } // SchemeBuilder ... SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme ... 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 DNSRecordSet ¶
type DNSRecordSet struct { Provider string `json:"provider"` Zone string `json:"zone"` RecordName string `json:"recordName"` TTL int `json:"ttl"` }
DNSRecordSet describes parameters for creating/updating a DNS record set.
func (*DNSRecordSet) DeepCopy ¶
func (in *DNSRecordSet) DeepCopy() *DNSRecordSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecordSet.
func (*DNSRecordSet) DeepCopyInto ¶
func (in *DNSRecordSet) DeepCopyInto(out *DNSRecordSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FloatingIPPool ¶
type FloatingIPPool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec FloatingIPPoolSpec `json:"spec,omitempty"` Status FloatingIPPoolStatus `json:"status,omitempty"` }
FloatingIPPool defines a schema describing a desired mapping of floating IPs to nodes. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*FloatingIPPool) DeepCopy ¶
func (in *FloatingIPPool) DeepCopy() *FloatingIPPool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FloatingIPPool.
func (*FloatingIPPool) DeepCopyInto ¶
func (in *FloatingIPPool) DeepCopyInto(out *FloatingIPPool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FloatingIPPool) DeepCopyObject ¶
func (in *FloatingIPPool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FloatingIPPoolList ¶
type FloatingIPPoolList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []FloatingIPPool `json:"items"` }
FloatingIPPoolList contains a list of FloatingIPPool
func (*FloatingIPPoolList) DeepCopy ¶
func (in *FloatingIPPoolList) DeepCopy() *FloatingIPPoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FloatingIPPoolList.
func (*FloatingIPPoolList) DeepCopyInto ¶
func (in *FloatingIPPoolList) DeepCopyInto(out *FloatingIPPoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FloatingIPPoolList) DeepCopyObject ¶
func (in *FloatingIPPoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FloatingIPPoolSpec ¶
type FloatingIPPoolSpec struct { // IPs is a list of floating IP addresses for assignment. IPs may be omitted or incomplete if // DesiredIPs is provided. IPs []string `json:"ips"` // DesiredIPs specifies the total number of IPs which should be available for assignment. If // DesiredIPs is 0 or omitted, all IPs in the IPs field will be used. DesiredIPs int `json:"desiredIPs,omitempty"` // BaseProvider describes the provider hosting the specified IPs. It's assumed all matching nodes // are associated with the specified provider. Provider string `json:"provider,omitempty"` // Region describes the region associated with the specified IPs. It's assumed all matching // nodes are associated with the specified region. Region string `json:"region,omitempty"` // Match describes the set of nodes to assign IPs. Match Match `json:"match"` // DNS describes a DNS record which should point to the floating IPs. DNSRecordSet *DNSRecordSet `json:"dnsRecordSet,omitempty"` // AssignmentCoolOffSeconds sets a delay between IP assignments. This functionality can be used // to prevent rapid reshuffling and reduces the chances/impact of concurrent assignments. AssignmentCoolOffSeconds float64 `json:"assignmentCoolOffSeconds,omitempty"` }
FloatingIPPoolSpec defines the desired state of FloatingIPPool.
func (*FloatingIPPoolSpec) DeepCopy ¶
func (in *FloatingIPPoolSpec) DeepCopy() *FloatingIPPoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FloatingIPPoolSpec.
func (*FloatingIPPoolSpec) DeepCopyInto ¶
func (in *FloatingIPPoolSpec) DeepCopyInto(out *FloatingIPPoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FloatingIPPoolStatus ¶
type FloatingIPPoolStatus struct { IPs map[string]IPStatus `json:"ips,omitempty"` NodeErrors []string `json:"nodeErrors,omitempty"` AssignableNodes []string `json:"assignableNodes,omitempty"` Error string `json:"error,omitempty"` }
FloatingIPPoolStatus defines the observed state of FloatingIPPool.
func (*FloatingIPPoolStatus) DeepCopy ¶
func (in *FloatingIPPoolStatus) DeepCopy() *FloatingIPPoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FloatingIPPoolStatus.
func (*FloatingIPPoolStatus) DeepCopyInto ¶
func (in *FloatingIPPoolStatus) DeepCopyInto(out *FloatingIPPoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPState ¶
type IPState string
IPState describes the condition of an IP.
const ( // IPStateActive indicates an IP is assigned to a matching node. IPStateActive IPState = "active" // IPStateInProgress indicates an action against the IP is in progress. IPStateInProgress IPState = "in-progress" // IPStateError indicates the last action against the IP failed. IPStateError IPState = "error" // IPStateNoMatch indicates the IP is assigned, but the target node is not matching. IPStateNoMatch IPState = "no-match" // IPStateUnassigned indicates the IP is currently unassigned. IPStateUnassigned IPState = "unassigned" // IPStateDisabled indicates the IP is beyond the desiredIPs limit, and temporarily disabled. IPStateDisabled IPState = "disabled" )
type IPStatus ¶
type IPStatus struct { State IPState `json:"state"` NodeName string `json:"nodeName,omitempty"` ProviderID string `json:"providerID,omitempty"` Error string `json:"error,omitempty"` }
IPStatus describes the mapping between IPs and the matching resources responsible for their attachment.
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 Match ¶
type Match struct { // NodeLabel is used to restrict the nodes IPs can be assigned to. Empty string matches all. NodeLabel string `json:"nodeLabel,omitempty"` // PodLabel, if specified, requires candidate nodes include at least one matching // pod in the "Running" states and "Ready" condition. PodLabel string `json:"podLabel,omitempty"` // PodNamespace restricts the namespace used for pod matching. If omitted, all namespaces are // considered. PodNamespace string `json:"podNamespace,omitempty"` // Tolerations is a list of node taints we will tolerate when deciding if the // node is a suitable candidate. Tolerations []corev1.Toleration `json:"tolerations,omitempty"` }
Match describes a pattern for finding resources the floating-IP should follow.
func (*Match) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Match.
func (*Match) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeDNSRecordSet ¶
type NodeDNSRecordSet struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NodeDNSRecordSetSpec `json:"spec,omitempty"` Status NodeDNSRecordSetStatus `json:"status,omitempty"` }
NodeDNSRecordSet defines a schema for updating a DNS record set to target matching nodes. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*NodeDNSRecordSet) DeepCopy ¶
func (in *NodeDNSRecordSet) DeepCopy() *NodeDNSRecordSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeDNSRecordSet.
func (*NodeDNSRecordSet) DeepCopyInto ¶
func (in *NodeDNSRecordSet) DeepCopyInto(out *NodeDNSRecordSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeDNSRecordSet) DeepCopyObject ¶
func (in *NodeDNSRecordSet) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeDNSRecordSetList ¶
type NodeDNSRecordSetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NodeDNSRecordSet `json:"items"` }
NodeDNSRecordSetList contains a list of NodeDNSRecordSet
func (*NodeDNSRecordSetList) DeepCopy ¶
func (in *NodeDNSRecordSetList) DeepCopy() *NodeDNSRecordSetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeDNSRecordSetList.
func (*NodeDNSRecordSetList) DeepCopyInto ¶
func (in *NodeDNSRecordSetList) DeepCopyInto(out *NodeDNSRecordSetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeDNSRecordSetList) DeepCopyObject ¶
func (in *NodeDNSRecordSetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeDNSRecordSetSpec ¶
type NodeDNSRecordSetSpec struct { // Match describes the set of nodes to assign DNS entries. Match Match `json:"match"` // DNS describes a DNS record which should point to matching nodes. DNSRecordSet DNSRecordSet `json:"dnsRecordSet"` // AddressType defines which node IP to add (ex. ExternalIP or InternalIP), currently hostname // and IPv6 address types are not supported. Defaults to ExternalIP. AddressType corev1.NodeAddressType `json:"addressType"` }
NodeDNSRecordSetSpec defines the desired state of NodeDNSRecordSet.
func (*NodeDNSRecordSetSpec) DeepCopy ¶
func (in *NodeDNSRecordSetSpec) DeepCopy() *NodeDNSRecordSetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeDNSRecordSetSpec.
func (*NodeDNSRecordSetSpec) DeepCopyInto ¶
func (in *NodeDNSRecordSetSpec) DeepCopyInto(out *NodeDNSRecordSetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeDNSRecordSetStatus ¶
type NodeDNSRecordSetStatus struct { Error string `json:"error,omitempty"` State NodeDNSRecordState `json:"state"` }
NodeDNSRecordSetStatus defines the observed state of NodeDNSRecordSet.
func (*NodeDNSRecordSetStatus) DeepCopy ¶
func (in *NodeDNSRecordSetStatus) DeepCopy() *NodeDNSRecordSetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeDNSRecordSetStatus.
func (*NodeDNSRecordSetStatus) DeepCopyInto ¶
func (in *NodeDNSRecordSetStatus) DeepCopyInto(out *NodeDNSRecordSetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeDNSRecordState ¶
type NodeDNSRecordState string
NodeDNSRecordState describes the condition of a NodeDNSRecordSet.
const ( // NodeDNSRecordActive indicates that the DNS record has been created. NodeDNSRecordActive NodeDNSRecordState = "active" // NodeDNSRecordInProgress indicates an DNS record action in progress. NodeDNSRecordInProgress NodeDNSRecordState = "in-progress" // NodeDNSRecordError indicates the last DNS record action failed. NodeDNSRecordError NodeDNSRecordState = "error" )