Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func ClusterNameRoleTag(clusterName, role string) string
- func ClusterNameTag(clusterName string) string
- func ClusterNameUIDRoleTag(clusterName, clusterUID, role string) string
- func NameTagFromName(name string) string
- type BuildTagParams
- type ForwardingRule
- type GenericInfo
- type HealthCheck
- type LBFirewallRule
- type NetworkSpec
- type PowerStatus
- type ServerState
- type StickySessions
- type SubscriptionStatus
- type Tags
- type VultrCluster
- type VultrClusterList
- type VultrClusterSpec
- type VultrClusterStatus
- type VultrClusterTemplate
- type VultrClusterTemplateList
- type VultrClusterTemplateResource
- type VultrClusterTemplateSpec
- type VultrLoadBalancer
- type VultrMachine
- type VultrMachineList
- type VultrMachineSpec
- type VultrMachineStatus
- type VultrMachineTemplate
- type VultrMachineTemplateList
- type VultrMachineTemplateResource
- type VultrMachineTemplateSpec
- type VultrNetworkResource
- type VultrResourceReference
Constants ¶
const ( // NameVultrProviderPrefix is the tag prefix for // cluster-api-provider-Vultr owned components. NameVultrProviderPrefix = "sigs-k8s-io:capvultr" // APIServerRoleTagValue describes the value for the apiserver role. APIServerRoleTagValue = "apiserver" // NodeRoleTagValue describes the value for the node role. NodeRoleTagValue = "node" )
const ( // ClusterFinalizer allows ReconcileVultrCluster to clean up Vultr resources associated with VultrCluster before // removing it from the apiserver. ClusterFinalizer = "vultrcluster.infrastructure.cluster.x-k8s.io" )
const ( // MachineFinalizer allows ReconcileVultrMachine to clean up Vultr resources associated with VultrMachine before // removing it from the apiserver. MachineFinalizer = "vultrmachine.infrastructure.cluster.x-k8s.io" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // 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 )
var ( SubscriptionStatusPending = SubscriptionStatus("pending") SubscriptionStatusActive = SubscriptionStatus("active") SubscriptionStatusSuspended = SubscriptionStatus("suspended") SubscriptionStatusClosed = SubscriptionStatus("closed") )
var ( PowerStatusStarting = PowerStatus("starting") PowerStatusStopped = PowerStatus("stopped") PowerStatusRunning = PowerStatus("running") )
var ( ServerStateNone = ServerState("none") ServerStateLocked = ServerState("locked") ServerStateBooting = ServerState("installingbooting") ServerStateIsoMounting = ServerState("isomounting") ServerStateOK = ServerState("ok") ServerStateError = ServerState("error") )
var ( // Default values for VultrLoadBalancer fields DefaultLBPort = 6443 DefaultLBAlgorithm = "roundrobin" DefaultLBHealthCheckInterval = 15 DefaultLBHealthCheckTimeout = 5 DefaultLBHealthCheckUnhealthyThreshold = 5 DefaultLBHealthCheckHealthyThreshold = 5 )
Functions ¶
func ClusterNameRoleTag ¶
ClusterNameRoleTag generates the tag with prefix `NameVultrProviderPrefix` and `RoleValue` as suffix It will generated tag like `sigs-k8s-io:capv:{clusterName}:{role}`.
func ClusterNameTag ¶
ClusterNameTag generates the tag with prefix `NameVultrProviderPrefix` for resources associated with a cluster. It will generated tag like `sigs-k8s-io:capvultr:{clusterName}`.
func ClusterNameUIDRoleTag ¶
ClusterNameUIDRoleTag generates the tag with prefix `NameVultrProviderPrefix` and `RoleValue` as suffix It will generated tag like `sigs-k8s-io:capvultr:{clusterName}:{UID}:{role}`.
func NameTagFromName ¶
NameTagFromName returns Vultr safe name tag from name.
Types ¶
type BuildTagParams ¶
type BuildTagParams struct {
// ClusterName is the cluster associated with the resource.
ClusterName string
// ClusterUID is the cluster uid from clusters.cluster.x-k8s.io uid
ClusterUID string
// Name is the name of the resource, it's applied as the tag "name" on Vultr.
Name string
// Role is the role associated to the resource.
Role string
// Any additional tags to be added to the resource.
// +optional
Additional Tags
}
BuildTagParams is used to build tags around an Vultr resource.
func (*BuildTagParams) DeepCopy ¶
func (in *BuildTagParams) DeepCopy() *BuildTagParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildTagParams.
func (*BuildTagParams) DeepCopyInto ¶
func (in *BuildTagParams) DeepCopyInto(out *BuildTagParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ForwardingRule ¶
type ForwardingRule struct {
RuleID string `json:"id,omitempty"`
FrontendProtocol string `json:"frontend_protocol,omitempty"`
FrontendPort int `json:"frontend_port,omitempty"`
BackendProtocol string `json:"backend_protocol,omitempty"`
BackendPort int `json:"backend_port,omitempty"`
}
ForwardingRule represent a single forwarding rule
func (*ForwardingRule) DeepCopy ¶
func (in *ForwardingRule) DeepCopy() *ForwardingRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ForwardingRule.
func (*ForwardingRule) DeepCopyInto ¶
func (in *ForwardingRule) DeepCopyInto(out *ForwardingRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GenericInfo ¶
type GenericInfo struct {
BalancingAlgorithm string `json:"balancing_algorithm,omitempty"`
SSLRedirect *bool `json:"ssl_redirect,omitempty"`
StickySessions *StickySessions `json:"sticky_sessions,omitempty"`
ProxyProtocol *bool `json:"proxy_protocol,omitempty"`
VPC string `json:"vpc,omitempty"`
}
GenericInfo represents generic configuration of your load balancer
func (*GenericInfo) DeepCopy ¶
func (in *GenericInfo) DeepCopy() *GenericInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericInfo.
func (*GenericInfo) DeepCopyInto ¶
func (in *GenericInfo) DeepCopyInto(out *GenericInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheck ¶
type HealthCheck struct {
Protocol string `json:"protocol,omitempty"`
Port int `json:"port,omitempty"`
Path string `json:"path,omitempty"`
CheckInterval int `json:"check_interval,omitempty"`
ResponseTimeout int `json:"response_timeout,omitempty"`
UnhealthyThreshold int `json:"unhealthy_threshold,omitempty"`
HealthyThreshold int `json:"healthy_threshold,omitempty"`
}
HealthCheck represents your health check configuration for your load balancer.
func (*HealthCheck) DeepCopy ¶
func (in *HealthCheck) DeepCopy() *HealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.
func (*HealthCheck) DeepCopyInto ¶
func (in *HealthCheck) DeepCopyInto(out *HealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LBFirewallRule ¶
type LBFirewallRule struct {
RuleID string `json:"id,omitempty"`
Port int `json:"port,omitempty"`
IPType string `json:"ip_type,omitempty"`
Source string `json:"source,omitempty"`
}
LBFirewallRule represents a single firewall rule
func (*LBFirewallRule) DeepCopy ¶
func (in *LBFirewallRule) DeepCopy() *LBFirewallRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LBFirewallRule.
func (*LBFirewallRule) DeepCopyInto ¶
func (in *LBFirewallRule) DeepCopyInto(out *LBFirewallRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkSpec ¶
type NetworkSpec struct {
// Configures an API Server loadbalancers
// +optional
APIServerLoadbalancers VultrLoadBalancer `json:"apiServerLoadbalancers,omitempty"`
}
NetworkSpec encapsulates Vultr networking configuration.
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 StickySessions ¶
type StickySessions struct {
CookieName string `json:"cookie_name,omitempty"`
}
StickySessions represents cookie for your load balancer
func (*StickySessions) DeepCopy ¶
func (in *StickySessions) DeepCopy() *StickySessions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StickySessions.
func (*StickySessions) DeepCopyInto ¶
func (in *StickySessions) DeepCopyInto(out *StickySessions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubscriptionStatus ¶
type SubscriptionStatus string
ServerStatus represents the status of subscription.
type Tags ¶
type Tags []string
Tags defines a slice of tags.
func BuildTags ¶
func BuildTags(params BuildTagParams) Tags
BuildTags builds tags including the cluster tag and returns them in map form.
func (Tags) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tags.
func (Tags) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrCluster ¶
type VultrCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VultrClusterSpec `json:"spec,omitempty"`
Status VultrClusterStatus `json:"status,omitempty"`
}
VultrCluster is the Schema for the vultrclusters API
func (*VultrCluster) DeepCopy ¶
func (in *VultrCluster) DeepCopy() *VultrCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrCluster.
func (*VultrCluster) DeepCopyInto ¶
func (in *VultrCluster) DeepCopyInto(out *VultrCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrCluster) DeepCopyObject ¶
func (in *VultrCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*VultrCluster) GetConditions ¶
func (r *VultrCluster) GetConditions() clusterv1.Conditions
func (*VultrCluster) SetConditions ¶
func (r *VultrCluster) SetConditions(conditions clusterv1.Conditions)
type VultrClusterList ¶
type VultrClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VultrCluster `json:"items"`
}
VultrClusterList contains a list of VultrCluster
func (*VultrClusterList) DeepCopy ¶
func (in *VultrClusterList) DeepCopy() *VultrClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterList.
func (*VultrClusterList) DeepCopyInto ¶
func (in *VultrClusterList) DeepCopyInto(out *VultrClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrClusterList) DeepCopyObject ¶
func (in *VultrClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrClusterSpec ¶
type VultrClusterSpec struct {
// The Vultr Region (DCID) the cluster lives on
Region string `json:"region"`
// NetworkSpec encapsulates all things related to Vultr network.
// +optional
Network NetworkSpec `json:"network"`
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// +optional
ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`
// VPCID is the Vultr VPC ID used for the cluster's load balancer.
// +optional
VPCID string `json:"vpc_id,omitempty"`
}
VultrClusterSpec defines the desired state of VultrCluster
func (*VultrClusterSpec) DeepCopy ¶
func (in *VultrClusterSpec) DeepCopy() *VultrClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterSpec.
func (*VultrClusterSpec) DeepCopyInto ¶
func (in *VultrClusterSpec) DeepCopyInto(out *VultrClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrClusterStatus ¶
type VultrClusterStatus struct {
// Ready denotes that the cluster (infrastructure) is ready
// +optional
Ready bool `json:"ready"`
// FailureReason will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a succinct value suitable
// for machine interpretation.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureReason *errors.ClusterStatusError `json:"failureReason,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a more verbose string suitable
// for logging and human consumption.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// Conditions defines current service state of the VultrCluster.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// Network encapsulates all things related to the Vultr network.
// +optional
Network VultrNetworkResource `json:"network,omitempty"`
}
VultrClusterStatus defines the observed state of VultrCluster
func (*VultrClusterStatus) DeepCopy ¶
func (in *VultrClusterStatus) DeepCopy() *VultrClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterStatus.
func (*VultrClusterStatus) DeepCopyInto ¶
func (in *VultrClusterStatus) DeepCopyInto(out *VultrClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrClusterTemplate ¶
type VultrClusterTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VultrClusterTemplateSpec `json:"spec,omitempty"`
}
VultrClusterTemplate is the Schema for the vultrclustertemplates API
func (*VultrClusterTemplate) DeepCopy ¶
func (in *VultrClusterTemplate) DeepCopy() *VultrClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterTemplate.
func (*VultrClusterTemplate) DeepCopyInto ¶
func (in *VultrClusterTemplate) DeepCopyInto(out *VultrClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrClusterTemplate) DeepCopyObject ¶
func (in *VultrClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrClusterTemplateList ¶
type VultrClusterTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VultrClusterTemplate `json:"items"`
}
VultrClusterTemplateList contains a list of VultrClusterTemplate
func (*VultrClusterTemplateList) DeepCopy ¶
func (in *VultrClusterTemplateList) DeepCopy() *VultrClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterTemplateList.
func (*VultrClusterTemplateList) DeepCopyInto ¶
func (in *VultrClusterTemplateList) DeepCopyInto(out *VultrClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrClusterTemplateList) DeepCopyObject ¶
func (in *VultrClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrClusterTemplateResource ¶
type VultrClusterTemplateResource struct {
Spec VultrClusterSpec `json:"spec"`
}
VultrClusterTemplateResource contains spec for VultrClusterSpec.
func (*VultrClusterTemplateResource) DeepCopy ¶
func (in *VultrClusterTemplateResource) DeepCopy() *VultrClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterTemplateResource.
func (*VultrClusterTemplateResource) DeepCopyInto ¶
func (in *VultrClusterTemplateResource) DeepCopyInto(out *VultrClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrClusterTemplateSpec ¶
type VultrClusterTemplateSpec struct {
Template VultrClusterTemplateResource `json:"template"`
}
VultrClusterTemplateSpec defines the desired state of VultrClusterTemplate
func (*VultrClusterTemplateSpec) DeepCopy ¶
func (in *VultrClusterTemplateSpec) DeepCopy() *VultrClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrClusterTemplateSpec.
func (*VultrClusterTemplateSpec) DeepCopyInto ¶
func (in *VultrClusterTemplateSpec) DeepCopyInto(out *VultrClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrLoadBalancer ¶
type VultrLoadBalancer struct {
ID string `json:"id,omitempty"`
DateCreated string `json:"date_created,omitempty"`
Region string `json:"region,omitempty"`
Label string `json:"label,omitempty"`
Status string `json:"status,omitempty"`
IPV4 string `json:"ipv4,omitempty"`
IPV6 string `json:"ipv6,omitempty"`
Instances []string `json:"instances,omitempty"`
Nodes int `json:"nodes,omitempty"`
HealthCheck *HealthCheck `json:"health_check,omitempty"`
GenericInfo *GenericInfo `json:"generic_info,omitempty"`
SSLInfo *bool `json:"has_ssl,omitempty"`
ForwardingRules []ForwardingRule `json:"forwarding_rules,omitempty"`
FirewallRules []LBFirewallRule `json:"firewall_rules,omitempty"`
}
VultrLoadBalancer represents the structure of a Vultr load balancer
func (*VultrLoadBalancer) ApplyDefaults ¶
func (in *VultrLoadBalancer) ApplyDefaults()
ApplyDefaults sets default values for VultrLoadBalancer fields if they are not set.
func (*VultrLoadBalancer) DeepCopy ¶
func (in *VultrLoadBalancer) DeepCopy() *VultrLoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrLoadBalancer.
func (*VultrLoadBalancer) DeepCopyInto ¶
func (in *VultrLoadBalancer) DeepCopyInto(out *VultrLoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrMachine ¶
type VultrMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VultrMachineSpec `json:"spec,omitempty"`
Status VultrMachineStatus `json:"status,omitempty"`
}
VultrMachine is the Schema for the vultrmachines API
func (*VultrMachine) DeepCopy ¶
func (in *VultrMachine) DeepCopy() *VultrMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachine.
func (*VultrMachine) DeepCopyInto ¶
func (in *VultrMachine) DeepCopyInto(out *VultrMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrMachine) DeepCopyObject ¶
func (in *VultrMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*VultrMachine) GetConditions ¶
func (r *VultrMachine) GetConditions() clusterv1.Conditions
func (*VultrMachine) SetConditions ¶
func (r *VultrMachine) SetConditions(conditions clusterv1.Conditions)
type VultrMachineList ¶
type VultrMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VultrMachine `json:"items"`
}
VultrMachineList contains a list of VultrMachine
func (*VultrMachineList) DeepCopy ¶
func (in *VultrMachineList) DeepCopy() *VultrMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineList.
func (*VultrMachineList) DeepCopyInto ¶
func (in *VultrMachineList) DeepCopyInto(out *VultrMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrMachineList) DeepCopyObject ¶
func (in *VultrMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrMachineSpec ¶
type VultrMachineSpec struct {
// Foo is an example field of VultrMachine. Edit vultrmachine_types.go to remove/update
// ProviderID is the unique identifier as specified by the cloud provider.
// +optional
ProviderID *string `json:"providerID,omitempty"`
//The Vultr snapshot_id to use when deploying this instance.
Snapshot string `json:"snapshot_id,omitempty"`
// PlanID is the id of Vultr VPS plan (VPSPLANID).
PlanID string `json:"planID,omitempty"`
// The Vultr Region (DCID) the cluster lives on
// +kubebuilder:validation:Required
Region string `json:"region"`
// sshKey is the name of the ssh key to attach to the instance.
// +optional
SSHKey []string `json:"sshKey,omitempty"`
// VPCID is the id of the VPC to be attached.
// +optional
VPCID string `json:"vpc_id,omitempty"`
//VPCOnly indicates that the VPS will not receive a public IP or public NIC when true.
VPCOnly bool `json:"vpc_only,omitempty"`
//The Vultr firewall group ID to attach to the instance
// +optional
FirewallGroupID string `json:"firewall_group_id,omitempty"`
// VPC2ID is the id of the VPC2.0 to be attached.
// Deprecated: VPC2 is no longer supported and functionality will cease in a
// future release
// +optional
VPC2ID string `json:"vpc2_id,omitempty"`
}
VultrMachineSpec defines the desired state of VultrMachine
func (*VultrMachineSpec) DeepCopy ¶
func (in *VultrMachineSpec) DeepCopy() *VultrMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineSpec.
func (*VultrMachineSpec) DeepCopyInto ¶
func (in *VultrMachineSpec) DeepCopyInto(out *VultrMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrMachineStatus ¶
type VultrMachineStatus struct {
// Ready represents the infrastructure is ready to be used or not.
// +optional
Ready bool `json:"ready"`
// Addresses contains the Vultr instance associated addresses.
Addresses []corev1.NodeAddress `json:"addresses,omitempty"`
// ServerStatus represents the status of subscription.
// +optional
SubscriptionStatus *SubscriptionStatus `json:"subscriptionStatus,omitempty"`
// PowerStatus represents that the VPS is powerd on or not
// +optional
PowerStatus *PowerStatus `json:"powerStatus,omitempty"`
// ServerState represents a detail of server state.
// +optional
ServerState *ServerState `json:"serverState,omitempty"`
// FailureReason will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a succinct value suitable
// for machine interpretation.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"`
// FailureMessage will be set in the event that there is a terminal problem
// reconciling the Machine and will contain a more verbose string suitable
// for logging and human consumption.
//
// This field should not be set for transitive errors that a controller
// faces that are expected to be fixed automatically over
// time (like service outages), but instead indicate that something is
// fundamentally wrong with the Machine's spec or the configuration of
// the controller, and that manual intervention is required. Examples
// of terminal errors would be invalid combinations of settings in the
// spec, values that are unsupported by the controller, or the
// responsible controller itself being critically misconfigured.
//
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// Conditions defines current service state of the VultrCluster.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
VultrMachineStatus defines the observed state of VultrMachine
func (*VultrMachineStatus) DeepCopy ¶
func (in *VultrMachineStatus) DeepCopy() *VultrMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineStatus.
func (*VultrMachineStatus) DeepCopyInto ¶
func (in *VultrMachineStatus) DeepCopyInto(out *VultrMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrMachineTemplate ¶
type VultrMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VultrMachineTemplateSpec `json:"spec,omitempty"`
}
func (*VultrMachineTemplate) DeepCopy ¶
func (in *VultrMachineTemplate) DeepCopy() *VultrMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineTemplate.
func (*VultrMachineTemplate) DeepCopyInto ¶
func (in *VultrMachineTemplate) DeepCopyInto(out *VultrMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrMachineTemplate) DeepCopyObject ¶
func (in *VultrMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrMachineTemplateList ¶
type VultrMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VultrMachineTemplate `json:"items"`
}
+kubebuilder:object:root=true VultrMachineTemplateList contains a list of VultrMachineTemplate
func (*VultrMachineTemplateList) DeepCopy ¶
func (in *VultrMachineTemplateList) DeepCopy() *VultrMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineTemplateList.
func (*VultrMachineTemplateList) DeepCopyInto ¶
func (in *VultrMachineTemplateList) DeepCopyInto(out *VultrMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VultrMachineTemplateList) DeepCopyObject ¶
func (in *VultrMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VultrMachineTemplateResource ¶
type VultrMachineTemplateResource struct {
// Spec is the specification of the desired behavior of the machine.
Spec VultrMachineSpec `json:"spec"`
}
VultrMachineTemplateResource describes the data needed to create a VultrMachine from a template.
func (*VultrMachineTemplateResource) DeepCopy ¶
func (in *VultrMachineTemplateResource) DeepCopy() *VultrMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineTemplateResource.
func (*VultrMachineTemplateResource) DeepCopyInto ¶
func (in *VultrMachineTemplateResource) DeepCopyInto(out *VultrMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrMachineTemplateSpec ¶
type VultrMachineTemplateSpec struct {
Template VultrMachineTemplateResource `json:"template"`
}
VultrMachineTemplateSpec defines the desired state of VultrMachineTemplate
func (*VultrMachineTemplateSpec) DeepCopy ¶
func (in *VultrMachineTemplateSpec) DeepCopy() *VultrMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrMachineTemplateSpec.
func (*VultrMachineTemplateSpec) DeepCopyInto ¶
func (in *VultrMachineTemplateSpec) DeepCopyInto(out *VultrMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrNetworkResource ¶
type VultrNetworkResource struct {
// APIServerLoadbalancersRef is the id of apiserver loadbalancers.
// +optional
APIServerLoadbalancersRef VultrResourceReference `json:"apiServerLoadbalancersRef,omitempty"`
}
VultrNetworkResource encapsulates Vultr networking resources.
func (*VultrNetworkResource) DeepCopy ¶
func (in *VultrNetworkResource) DeepCopy() *VultrNetworkResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrNetworkResource.
func (*VultrNetworkResource) DeepCopyInto ¶
func (in *VultrNetworkResource) DeepCopyInto(out *VultrNetworkResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VultrResourceReference ¶
type VultrResourceReference struct {
// ID of Vultr resource
// +optional
ResourceID string `json:"resourceId,omitempty"`
// Status of a Vultr resource
// +optional
ResourceSubscriptionStatus SubscriptionStatus `json:"resourceStatus,omitempty"`
// Power Status of a Vultr resource
// +optional
ResourcePowerStatus PowerStatus `json:"powerStatus,omitempty"`
// Server state of a Vultr resource
// +optional
ResourceServerState ServerState `json:"serverState,omitempty"`
}
VultrResourceReference is a reference to a Vultr resource.
func (*VultrResourceReference) DeepCopy ¶
func (in *VultrResourceReference) DeepCopy() *VultrResourceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VultrResourceReference.
func (*VultrResourceReference) DeepCopyInto ¶
func (in *VultrResourceReference) DeepCopyInto(out *VultrResourceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.