Documentation
¶
Overview ¶
Package v1alpha3 contains API Schema definitions for the infrastructure v1alpha3 API group +kubebuilder:object:generate=true +groupName=cluster-api-provider-hcloud.capihc.com
Index ¶
- Constants
- Variables
- func ClusterHcloudCloudProviderTagKey(name string) string
- func ClusterTagKey(name string) string
- type BareMetalMachine
- type BareMetalMachineList
- type BareMetalMachineSpec
- type BareMetalMachineStatus
- type BareMetalMachineTemplate
- type BareMetalMachineTemplateList
- type BareMetalMachineTemplateResource
- type BareMetalMachineTemplateSpec
- type HcloudCluster
- func (in *HcloudCluster) DeepCopy() *HcloudCluster
- func (in *HcloudCluster) DeepCopyInto(out *HcloudCluster)
- func (in *HcloudCluster) DeepCopyObject() runtime.Object
- func (*HcloudCluster) Hub()
- func (r *HcloudCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *HcloudCluster) ValidateCreate() error
- func (r *HcloudCluster) ValidateDelete() error
- func (r *HcloudCluster) ValidateUpdate(old runtime.Object) error
- type HcloudClusterList
- type HcloudClusterSpec
- type HcloudClusterStatus
- type HcloudClusterStatusManifests
- type HcloudImageID
- type HcloudLoadBalancerAlgorithmType
- type HcloudLoadBalancerSpec
- type HcloudLoadBalancerStatus
- type HcloudLocation
- type HcloudMachine
- func (in *HcloudMachine) DeepCopy() *HcloudMachine
- func (in *HcloudMachine) DeepCopyInto(out *HcloudMachine)
- func (in *HcloudMachine) DeepCopyObject() runtime.Object
- func (h *HcloudMachine) HcloudMachineSpec() *HcloudMachineSpec
- func (*HcloudMachine) Hub()
- func (r *HcloudMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *HcloudMachine) ValidateCreate() error
- func (r *HcloudMachine) ValidateDelete() error
- func (r *HcloudMachine) ValidateUpdate(old runtime.Object) error
- type HcloudMachineList
- type HcloudMachineSpec
- type HcloudMachineStatus
- type HcloudMachineTemplate
- type HcloudMachineTemplateList
- type HcloudMachineTemplateResource
- type HcloudMachineTemplateSpec
- type HcloudMachineTypeSpec
- type HcloudMachineVolume
- type HcloudNetwork
- type HcloudNetworkSpec
- type HcloudNetworkStatus
- type HcloudNetworkSubnetSpec
- type HcloudNetworkZone
- type HcloudSSHKeySpec
- type HcloudServerState
- type HcloudVolume
- type HcloudVolumeID
- type HcloudVolumeList
- type HcloudVolumeReclaimPolicy
- type HcloudVolumeSpec
- type HcloudVolumeStatus
- type LoadBalancerServiceSpec
- type ResourceLifecycle
Constants ¶
const ( HcloudLoadBalancerAlgorithmTypeRoundRobin = HcloudLoadBalancerAlgorithmType("round_robin") HcloudLoadBalancerAlgorithmTypeLeastConnections = HcloudLoadBalancerAlgorithmType("least_connections") )
const ( // ResourceLifecycleOwned is the value we use when tagging resources to indicate // that the resource is considered owned and managed by the cluster, // and in particular that the lifecycle is tied to the lifecycle of the cluster. ResourceLifecycleOwned = ResourceLifecycle("owned") // that the resource is shared between multiple clusters, and should not be destroyed // if the cluster is destroyed. ResourceLifecycleShared = ResourceLifecycle("shared") // NameKubernetesHcloudCloudProviderPrefix is the tag name used by the cloud provider to logically // separate independent cluster resources. We use it to identify which resources we expect // to be permissive about state changes. // logically independent clusters running in the same AZ. // The tag key = NameKubernetesHcloudCloudProviderPrefix + clusterID // The tag value is an ownership value NameKubernetesHcloudCloudProviderPrefix = "kubernetes.io/cluster/" // NameHcloudProviderPrefix is the tag prefix we use to differentiate // cluster-api-provider-hcloud owned components from other tooling that // uses NameKubernetesClusterPrefix NameHcloudProviderPrefix = "cluster-api-provider-hcloud.capihc.com/" // NameHcloudProviderOwned is the tag name we use to differentiate // cluster-api-provider-hcloud owned components from other tooling that // uses NameKubernetesClusterPrefix NameHcloudProviderOwned = "cluster." + NameHcloudProviderPrefix // MachineNameTag tags related MachineNameTag MachineNameTagKey = "machine." + NameHcloudProviderPrefix + "name" // MachineTempalteHashTag tags server resources MachineTemplateHashTagKey = "machine." + NameHcloudProviderPrefix + "template" )
const ( // ClusterFinalizer allows Reconcile BareMetalMachine to clean up // resources associated with BareMetalMachine before removing it from the // apiserver. BareMetalMachineFinalizer = "baremetalmachine.cluster-api-provider-hcloud.capihc.com" )
const ( // ClusterFinalizer allows ReconcileHcloudCluster to clean up Hcloud // resources associated with HcloudCluster before removing it from the // apiserver. ClusterFinalizer = "hcloudcluster.cluster-api-provider-hcloud.capihc.com" )
const ( // ClusterFinalizer allows ReconcileHcloudMachine to clean up Hcloud // resources associated with HcloudMachine before removing it from the // apiserver. MachineFinalizer = "hcloudmachine.cluster-api-provider-hcloud.capihc.com" )
const ( // VolumeFinalizer allows ReconcileHcloudVolume to clean up Hcloud // resources associated with HcloudVolume before removing it from the // apiserver. VolumeFinalizer = "hcloudvolume.cluster-api-provider-hcloud.capihc.com" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cluster-api-provider-hcloud.capihc.com", Version: "v1alpha3"} // 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 ¶
func ClusterHcloudCloudProviderTagKey ¶
ClusterHcloudCloudProviderTagKey generates the key for resources associated a cluster's Hcloud cloud provider.
func ClusterTagKey ¶
ClusterTagKey generates the key for resources associated with a cluster.
Types ¶
type BareMetalMachine ¶
type BareMetalMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec BareMetalMachineSpec `json:"spec,omitempty"`
Status BareMetalMachineStatus `json:"status,omitempty"`
}
BareMetalMachine is the Schema for the bareMetalMachine API
func (*BareMetalMachine) BareMetalMachineSpec ¶
func (h *BareMetalMachine) BareMetalMachineSpec() *BareMetalMachineSpec
func (*BareMetalMachine) DeepCopy ¶
func (in *BareMetalMachine) DeepCopy() *BareMetalMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachine.
func (*BareMetalMachine) DeepCopyInto ¶
func (in *BareMetalMachine) DeepCopyInto(out *BareMetalMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BareMetalMachine) DeepCopyObject ¶
func (in *BareMetalMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BareMetalMachine) Hub ¶
func (*BareMetalMachine) Hub()
Hub marks BareMetalMachine as a conversion hub.
type BareMetalMachineList ¶
type BareMetalMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BareMetalMachine `json:"items"`
}
BareMetalMachineList contains a list of BareMetalMachine
func (*BareMetalMachineList) DeepCopy ¶
func (in *BareMetalMachineList) DeepCopy() *BareMetalMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineList.
func (*BareMetalMachineList) DeepCopyInto ¶
func (in *BareMetalMachineList) DeepCopyInto(out *BareMetalMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BareMetalMachineList) DeepCopyObject ¶
func (in *BareMetalMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BareMetalMachineList) Hub ¶
func (*BareMetalMachineList) Hub()
Hub marks BareMetalMachineList as a conversion hub.
type BareMetalMachineSpec ¶
type BareMetalMachineSpec struct {
SSHTokenRef sshTokenRef `json:"sshTokenRef"`
// ProviderID is the unique identifier as specified by the cloud provider.
// +optional
ProviderID *string `json:"providerID"`
// +optional
Partition *string `json:"partition"`
ImagePath *string `json:"imagePath"`
ServerType *string `json:"serverType"`
}
BareMetalMachineSpec defines the desired state of a BareMetalMachine
func (*BareMetalMachineSpec) DeepCopy ¶
func (in *BareMetalMachineSpec) DeepCopy() *BareMetalMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineSpec.
func (*BareMetalMachineSpec) DeepCopyInto ¶
func (in *BareMetalMachineSpec) DeepCopyInto(out *BareMetalMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BareMetalMachineStatus ¶
type BareMetalMachineStatus struct {
IPv4 string `json:"server_ip,omitempty"`
IPv6 string `json:"ipv6,omitempty"`
ServerID int `json:"server_number,omitempty"`
ServerName string `json:"server_name,omitempty"`
Ready bool `json:"ready,omitempty"`
ServerState string `json:"serverState,omitempty"`
Cancelled bool `json:"cancelled,omitempty"`
Reset bool `json:"reset,omitempty"`
Rescue bool `json:"rescue,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"`
}
BareMetalMachineStatus defines the observed state of BareMetalMachine
func (*BareMetalMachineStatus) DeepCopy ¶
func (in *BareMetalMachineStatus) DeepCopy() *BareMetalMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineStatus.
func (*BareMetalMachineStatus) DeepCopyInto ¶
func (in *BareMetalMachineStatus) DeepCopyInto(out *BareMetalMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BareMetalMachineTemplate ¶
type BareMetalMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec BareMetalMachineTemplateSpec `json:"spec,omitempty"`
}
BareMetalMachineTemplate is the Schema for the bareMetalMachine API
func (*BareMetalMachineTemplate) DeepCopy ¶
func (in *BareMetalMachineTemplate) DeepCopy() *BareMetalMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineTemplate.
func (*BareMetalMachineTemplate) DeepCopyInto ¶
func (in *BareMetalMachineTemplate) DeepCopyInto(out *BareMetalMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BareMetalMachineTemplate) DeepCopyObject ¶
func (in *BareMetalMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BareMetalMachineTemplate) Hub ¶
func (*BareMetalMachineTemplate) Hub()
Hub marks BareMetalMachineTemplate as a conversion hub.
type BareMetalMachineTemplateList ¶
type BareMetalMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []BareMetalMachineTemplate `json:"items"`
}
BareMetalMachineTemplateList contains a list of BareMetalMachineTemplate
func (*BareMetalMachineTemplateList) DeepCopy ¶
func (in *BareMetalMachineTemplateList) DeepCopy() *BareMetalMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineTemplateList.
func (*BareMetalMachineTemplateList) DeepCopyInto ¶
func (in *BareMetalMachineTemplateList) DeepCopyInto(out *BareMetalMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BareMetalMachineTemplateList) DeepCopyObject ¶
func (in *BareMetalMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BareMetalMachineTemplateList) Hub ¶
func (*BareMetalMachineTemplateList) Hub()
Hub marks BareMetalMachineTemplateList as a conversion hub.
type BareMetalMachineTemplateResource ¶
type BareMetalMachineTemplateResource struct {
// Spec is the specification of the desired behavior of the machine.
Spec BareMetalMachineSpec `json:"spec"`
}
BareMetalMachineTemplateResource describes the data needed to create am BareMetalMachine from a template
func (*BareMetalMachineTemplateResource) DeepCopy ¶
func (in *BareMetalMachineTemplateResource) DeepCopy() *BareMetalMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineTemplateResource.
func (*BareMetalMachineTemplateResource) DeepCopyInto ¶
func (in *BareMetalMachineTemplateResource) DeepCopyInto(out *BareMetalMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BareMetalMachineTemplateSpec ¶
type BareMetalMachineTemplateSpec struct {
Template BareMetalMachineTemplateResource `json:"template"`
}
BareMetalMachineTemplateSpec defines the desired state of BareMetalMachineTemplate
func (*BareMetalMachineTemplateSpec) DeepCopy ¶
func (in *BareMetalMachineTemplateSpec) DeepCopy() *BareMetalMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BareMetalMachineTemplateSpec.
func (*BareMetalMachineTemplateSpec) DeepCopyInto ¶
func (in *BareMetalMachineTemplateSpec) DeepCopyInto(out *BareMetalMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudCluster ¶
type HcloudCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HcloudClusterSpec `json:"spec,omitempty"`
Status HcloudClusterStatus `json:"status,omitempty"`
}
HcloudCluster is the Schema for the hcloudclusters API
func (*HcloudCluster) DeepCopy ¶
func (in *HcloudCluster) DeepCopy() *HcloudCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudCluster.
func (*HcloudCluster) DeepCopyInto ¶
func (in *HcloudCluster) DeepCopyInto(out *HcloudCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudCluster) DeepCopyObject ¶
func (in *HcloudCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudCluster) Hub ¶
func (*HcloudCluster) Hub()
Hub marks HcloudCluster as a conversion hub.
func (*HcloudCluster) SetupWebhookWithManager ¶
func (r *HcloudCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*HcloudCluster) ValidateCreate ¶
func (r *HcloudCluster) ValidateCreate() error
func (*HcloudCluster) ValidateDelete ¶
func (r *HcloudCluster) ValidateDelete() error
func (*HcloudCluster) ValidateUpdate ¶
func (r *HcloudCluster) ValidateUpdate(old runtime.Object) error
type HcloudClusterList ¶
type HcloudClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HcloudCluster `json:"items"`
}
HcloudClusterList contains a list of HcloudCluster
func (*HcloudClusterList) DeepCopy ¶
func (in *HcloudClusterList) DeepCopy() *HcloudClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudClusterList.
func (*HcloudClusterList) DeepCopyInto ¶
func (in *HcloudClusterList) DeepCopyInto(out *HcloudClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudClusterList) DeepCopyObject ¶
func (in *HcloudClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudClusterList) Hub ¶
func (*HcloudClusterList) Hub()
Hub marks HcloudClusterList as a conversion hub.
func (*HcloudClusterList) SetupWebhookWithManager ¶
func (r *HcloudClusterList) SetupWebhookWithManager(mgr ctrl.Manager) error
type HcloudClusterSpec ¶
type HcloudClusterSpec struct {
// +optional
Locations []HcloudLocation `json:"locations"`
// define cluster wide SSH keys
SSHKeys []HcloudSSHKeySpec `json:"sshKeys"`
ControlPlaneLoadBalancer HcloudLoadBalancerSpec `json:"controlPlaneLoadbalancer"`
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// +optional
ControlPlaneEndpoint *clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`
// +optional
Network *HcloudNetworkSpec `json:"network"`
// Useful for https://github.com/kubernetes-sigs/multi-tenancy/blob/master/incubator/virtualcluster/doc/demo.md#optional-update-client-ca-secret
// +optional
VCKubeletClientSecretEnabled bool `json:"vcKubeletClientSecretEnabled"`
HcloudTokenRef *corev1.SecretKeySelector `json:"hcloudTokenRef"`
// If no token is provided then it is assumed that the bare metal controller is unused
// +optional
HrobotTokenRef *hrobotTokenRef `json:"hrobotTokenRef"`
}
HcloudClusterSpec defines the desired state of HcloudCluster
func (*HcloudClusterSpec) DeepCopy ¶
func (in *HcloudClusterSpec) DeepCopy() *HcloudClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudClusterSpec.
func (*HcloudClusterSpec) DeepCopyInto ¶
func (in *HcloudClusterSpec) DeepCopyInto(out *HcloudClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudClusterStatus ¶
type HcloudClusterStatus struct {
Locations []HcloudLocation `json:"locations,omitempty"`
NetworkZone HcloudNetworkZone `json:"networkZone,omitempty"`
ControlPlaneLoadBalancer HcloudLoadBalancerStatus `json:"controlPlaneLoadBalancer,omitempty"`
// +optional
Network *HcloudNetworkStatus `json:"network,omitempty"`
// Manifests stores the if the cluster has already applied the minimal
// manifests
// +optional
Manifests *HcloudClusterStatusManifests `json:"manifests,omitempty"`
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// FailureDomains contains the failure domains that machines should be
// placed in. failureDomains is a map, defined as
// map[string]FailureDomainSpec. A unique key must be used for each
// FailureDomainSpec
FailureDomains clusterv1.FailureDomains `json:"failureDomains,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"`
}
HcloudClusterStatus defines the observed state of HcloudCluster
func (*HcloudClusterStatus) DeepCopy ¶
func (in *HcloudClusterStatus) DeepCopy() *HcloudClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudClusterStatus.
func (*HcloudClusterStatus) DeepCopyInto ¶
func (in *HcloudClusterStatus) DeepCopyInto(out *HcloudClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudClusterStatusManifests ¶
type HcloudClusterStatusManifests struct {
Initialized *bool `json:"initialized,omitempty"`
AppliedHash *string `json:"appliedHash,omitempty"`
}
func (*HcloudClusterStatusManifests) DeepCopy ¶
func (in *HcloudClusterStatusManifests) DeepCopy() *HcloudClusterStatusManifests
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudClusterStatusManifests.
func (*HcloudClusterStatusManifests) DeepCopyInto ¶
func (in *HcloudClusterStatusManifests) DeepCopyInto(out *HcloudClusterStatusManifests)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudImageID ¶
type HcloudImageID int
type HcloudLoadBalancerAlgorithmType ¶
type HcloudLoadBalancerAlgorithmType string
+kubebuilder:validation:Enum=round_robin;least_connections
type HcloudLoadBalancerSpec ¶
type HcloudLoadBalancerSpec struct {
// +optional
Name *string `json:"name"`
Algorithm HcloudLoadBalancerAlgorithmType `json:"algorithm"`
Type string `json:"type"`
Services []LoadBalancerServiceSpec `json:"services"`
}
func (*HcloudLoadBalancerSpec) DeepCopy ¶
func (in *HcloudLoadBalancerSpec) DeepCopy() *HcloudLoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudLoadBalancerSpec.
func (*HcloudLoadBalancerSpec) DeepCopyInto ¶
func (in *HcloudLoadBalancerSpec) DeepCopyInto(out *HcloudLoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudLoadBalancerStatus ¶
type HcloudLoadBalancerStatus struct {
ID int `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Type string `json:"type,omitempty"`
IPv4 string `json:"ipv4,omitempty"`
IPv6 string `json:"ipv6,omitempty"`
InternalIP string `json:"internalIP,omitempty"`
Labels map[string]string `json:"-"`
Algorithm HcloudLoadBalancerAlgorithmType `json:"algorithm,omitempty"`
Targets []int `json:"-"`
}
func (*HcloudLoadBalancerStatus) DeepCopy ¶
func (in *HcloudLoadBalancerStatus) DeepCopy() *HcloudLoadBalancerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudLoadBalancerStatus.
func (*HcloudLoadBalancerStatus) DeepCopyInto ¶
func (in *HcloudLoadBalancerStatus) DeepCopyInto(out *HcloudLoadBalancerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudLocation ¶
type HcloudLocation string
type HcloudMachine ¶
type HcloudMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HcloudMachineSpec `json:"spec,omitempty"`
Status HcloudMachineStatus `json:"status,omitempty"`
}
HcloudMachine is the Schema for the hcloudmachine API
func (*HcloudMachine) DeepCopy ¶
func (in *HcloudMachine) DeepCopy() *HcloudMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachine.
func (*HcloudMachine) DeepCopyInto ¶
func (in *HcloudMachine) DeepCopyInto(out *HcloudMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudMachine) DeepCopyObject ¶
func (in *HcloudMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudMachine) HcloudMachineSpec ¶
func (h *HcloudMachine) HcloudMachineSpec() *HcloudMachineSpec
func (*HcloudMachine) Hub ¶
func (*HcloudMachine) Hub()
Hub marks HcloudMachine as a conversion hub.
func (*HcloudMachine) SetupWebhookWithManager ¶
func (r *HcloudMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*HcloudMachine) ValidateCreate ¶
func (r *HcloudMachine) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*HcloudMachine) ValidateDelete ¶
func (r *HcloudMachine) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*HcloudMachine) ValidateUpdate ¶
func (r *HcloudMachine) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type HcloudMachineList ¶
type HcloudMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HcloudMachine `json:"items"`
}
HcloudMachineList contains a list of HcloudMachine
func (*HcloudMachineList) DeepCopy ¶
func (in *HcloudMachineList) DeepCopy() *HcloudMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineList.
func (*HcloudMachineList) DeepCopyInto ¶
func (in *HcloudMachineList) DeepCopyInto(out *HcloudMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudMachineList) DeepCopyObject ¶
func (in *HcloudMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudMachineList) Hub ¶
func (*HcloudMachineList) Hub()
Hub marks HcloudMachineList as a conversion hub.
func (*HcloudMachineList) SetupWebhookWithManager ¶
func (r *HcloudMachineList) SetupWebhookWithManager(mgr ctrl.Manager) error
type HcloudMachineSpec ¶
type HcloudMachineSpec struct {
// define Machine specific SSH keys, overrides cluster wide SSH keys
// +optional
SSHKeys []HcloudSSHKeySpec `json:"sshKeys"`
Type HcloudMachineTypeSpec `json:"type"`
// +optional
Volumes []HcloudMachineVolume `json:"volumes"`
ImageName string `json:"image"`
// ProviderID is the unique identifier as specified by the cloud provider.
// +optional
ProviderID *string `json:"providerID"`
}
HcloudMachineSpec defines the desired state of HcloudMachine
func (*HcloudMachineSpec) DeepCopy ¶
func (in *HcloudMachineSpec) DeepCopy() *HcloudMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineSpec.
func (*HcloudMachineSpec) DeepCopyInto ¶
func (in *HcloudMachineSpec) DeepCopyInto(out *HcloudMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudMachineStatus ¶
type HcloudMachineStatus struct {
Location HcloudLocation `json:"location,omitempty"`
NetworkZone HcloudNetworkZone `json:"networkZone,omitempty"`
ImageID *HcloudImageID `json:"imageID,omitempty"`
// ServerState is the state of the server for this machine.
// +optional
ServerState HcloudServerState `json:"serverState,omitempty"`
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// ImageInitialized returns true if the image has been successfully
// initialized by packer
// +optional
ImageInitialized bool `json:"imageInitialized,omitempty"`
// Addresses contains the server's associated addresses.
Addresses []v1.NodeAddress `json:"addresses,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"`
}
HcloudMachineStatus defines the observed state of HcloudMachine
func (*HcloudMachineStatus) DeepCopy ¶
func (in *HcloudMachineStatus) DeepCopy() *HcloudMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineStatus.
func (*HcloudMachineStatus) DeepCopyInto ¶
func (in *HcloudMachineStatus) DeepCopyInto(out *HcloudMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudMachineTemplate ¶
type HcloudMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HcloudMachineTemplateSpec `json:"spec,omitempty"`
}
HcloudMachineTemplate is the Schema for the hcloudmachine API
func (*HcloudMachineTemplate) DeepCopy ¶
func (in *HcloudMachineTemplate) DeepCopy() *HcloudMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineTemplate.
func (*HcloudMachineTemplate) DeepCopyInto ¶
func (in *HcloudMachineTemplate) DeepCopyInto(out *HcloudMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudMachineTemplate) DeepCopyObject ¶
func (in *HcloudMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudMachineTemplate) Hub ¶
func (*HcloudMachineTemplate) Hub()
Hub marks HcloudMachineTemplate as a conversion hub.
type HcloudMachineTemplateList ¶
type HcloudMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HcloudMachineTemplate `json:"items"`
}
HcloudMachineTemplateList contains a list of HcloudMachineTemplate
func (*HcloudMachineTemplateList) DeepCopy ¶
func (in *HcloudMachineTemplateList) DeepCopy() *HcloudMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineTemplateList.
func (*HcloudMachineTemplateList) DeepCopyInto ¶
func (in *HcloudMachineTemplateList) DeepCopyInto(out *HcloudMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudMachineTemplateList) DeepCopyObject ¶
func (in *HcloudMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudMachineTemplateList) Hub ¶
func (*HcloudMachineTemplateList) Hub()
Hub marks HcloudMachineTemplateList as a conversion hub.
type HcloudMachineTemplateResource ¶
type HcloudMachineTemplateResource struct {
// Spec is the specification of the desired behavior of the machine.
Spec HcloudMachineSpec `json:"spec"`
}
HcloudMachineTemplateResource describes the data needed to create am HcloudMachine from a template
func (*HcloudMachineTemplateResource) DeepCopy ¶
func (in *HcloudMachineTemplateResource) DeepCopy() *HcloudMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineTemplateResource.
func (*HcloudMachineTemplateResource) DeepCopyInto ¶
func (in *HcloudMachineTemplateResource) DeepCopyInto(out *HcloudMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudMachineTemplateSpec ¶
type HcloudMachineTemplateSpec struct {
Template HcloudMachineTemplateResource `json:"template"`
}
HcloudMachineTemplateSpec defines the desired state of HcloudMachineTemplate
func (*HcloudMachineTemplateSpec) DeepCopy ¶
func (in *HcloudMachineTemplateSpec) DeepCopy() *HcloudMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineTemplateSpec.
func (*HcloudMachineTemplateSpec) DeepCopyInto ¶
func (in *HcloudMachineTemplateSpec) DeepCopyInto(out *HcloudMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudMachineTypeSpec ¶
type HcloudMachineTypeSpec string
type HcloudMachineVolume ¶
type HcloudMachineVolume struct {
Name string `json:"name,omitempty"`
VolumeRef string `json:"volumeRef,omitempty"`
MountPath string `json:"mountPath,omitempty"`
}
HcloudMachineVolume represent a Volume attachment
func (*HcloudMachineVolume) DeepCopy ¶
func (in *HcloudMachineVolume) DeepCopy() *HcloudMachineVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudMachineVolume.
func (*HcloudMachineVolume) DeepCopyInto ¶
func (in *HcloudMachineVolume) DeepCopyInto(out *HcloudMachineVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudNetwork ¶
type HcloudNetwork struct {
CIDRBlock string `json:"cidrBlock,omitempty"`
}
func (*HcloudNetwork) DeepCopy ¶
func (in *HcloudNetwork) DeepCopy() *HcloudNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudNetwork.
func (*HcloudNetwork) DeepCopyInto ¶
func (in *HcloudNetwork) DeepCopyInto(out *HcloudNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudNetworkSpec ¶
type HcloudNetworkSpec struct {
HcloudNetwork `json:",inline"`
Subnets []HcloudNetworkSubnetSpec `json:"subnets,omitempty"`
}
func (*HcloudNetworkSpec) DeepCopy ¶
func (in *HcloudNetworkSpec) DeepCopy() *HcloudNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudNetworkSpec.
func (*HcloudNetworkSpec) DeepCopyInto ¶
func (in *HcloudNetworkSpec) DeepCopyInto(out *HcloudNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudNetworkSpec) IsZero ¶
func (s *HcloudNetworkSpec) IsZero() bool
type HcloudNetworkStatus ¶
type HcloudNetworkStatus struct {
HcloudNetworkSpec `json:",inline"`
ID int `json:"id,omitempty"`
Labels map[string]string `json:"-"`
}
func (*HcloudNetworkStatus) DeepCopy ¶
func (in *HcloudNetworkStatus) DeepCopy() *HcloudNetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudNetworkStatus.
func (*HcloudNetworkStatus) DeepCopyInto ¶
func (in *HcloudNetworkStatus) DeepCopyInto(out *HcloudNetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudNetworkSubnetSpec ¶
type HcloudNetworkSubnetSpec struct {
HcloudNetwork `json:",inline"`
NetworkZone HcloudNetworkZone `json:"networkZone,omitempty"`
}
func (*HcloudNetworkSubnetSpec) DeepCopy ¶
func (in *HcloudNetworkSubnetSpec) DeepCopy() *HcloudNetworkSubnetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudNetworkSubnetSpec.
func (*HcloudNetworkSubnetSpec) DeepCopyInto ¶
func (in *HcloudNetworkSubnetSpec) DeepCopyInto(out *HcloudNetworkSubnetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudNetworkZone ¶
type HcloudNetworkZone string
type HcloudSSHKeySpec ¶
func (*HcloudSSHKeySpec) DeepCopy ¶
func (in *HcloudSSHKeySpec) DeepCopy() *HcloudSSHKeySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudSSHKeySpec.
func (*HcloudSSHKeySpec) DeepCopyInto ¶
func (in *HcloudSSHKeySpec) DeepCopyInto(out *HcloudSSHKeySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudServerState ¶
type HcloudServerState string
type HcloudVolume ¶
type HcloudVolume struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec HcloudVolumeSpec `json:"spec,omitempty"`
Status HcloudVolumeStatus `json:"status,omitempty"`
}
HcloudVolume is the Schema for the hcloudvolumes API
func (*HcloudVolume) DeepCopy ¶
func (in *HcloudVolume) DeepCopy() *HcloudVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudVolume.
func (*HcloudVolume) DeepCopyInto ¶
func (in *HcloudVolume) DeepCopyInto(out *HcloudVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudVolume) DeepCopyObject ¶
func (in *HcloudVolume) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HcloudVolumeID ¶
type HcloudVolumeID int
type HcloudVolumeList ¶
type HcloudVolumeList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []HcloudVolume `json:"items"`
}
HcloudVolumeList contains a list of HcloudVolume
func (*HcloudVolumeList) DeepCopy ¶
func (in *HcloudVolumeList) DeepCopy() *HcloudVolumeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudVolumeList.
func (*HcloudVolumeList) DeepCopyInto ¶
func (in *HcloudVolumeList) DeepCopyInto(out *HcloudVolumeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HcloudVolumeList) DeepCopyObject ¶
func (in *HcloudVolumeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*HcloudVolumeList) Hub ¶
func (*HcloudVolumeList) Hub()
Hub marks HcloudVolumeList as a conversion hub.
type HcloudVolumeReclaimPolicy ¶
type HcloudVolumeReclaimPolicy string
HcloudVolumeReclaimPolicy describes a policy for end-of-life maintenance of persistent volumes
const ( // HcloudVolumeReclaimDelete means the volume will be deleted from // Kubernetes on release from its claim. The volume plugin must support // Deletion. HcloudVolumeReclaimDelete HcloudVolumeReclaimPolicy = "Delete" // HcloudVolumeReclaimRetain means the volume will be left in its current // phase (Released) for manual reclamation by the administrator. The // default policy is Retain. HcloudVolumeReclaimRetain HcloudVolumeReclaimPolicy = "Retain" )
type HcloudVolumeSpec ¶
type HcloudVolumeSpec struct {
Location HcloudLocation `json:"location,omitempty"`
// Size contains the minimum requested size of the volume
// +optional
Size *resource.Quantity `json:"size,omitempty"`
// Size contains the minimum requested size of the volume
// +optional
ReclaimPolicy HcloudVolumeReclaimPolicy `json:"reclaimPolicy,omitempty"`
}
HcloudVolumeSpec defines the desired state of HcloudVolume
func (*HcloudVolumeSpec) DeepCopy ¶
func (in *HcloudVolumeSpec) DeepCopy() *HcloudVolumeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudVolumeSpec.
func (*HcloudVolumeSpec) DeepCopyInto ¶
func (in *HcloudVolumeSpec) DeepCopyInto(out *HcloudVolumeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HcloudVolumeStatus ¶
type HcloudVolumeStatus struct {
Location HcloudLocation `json:"location,omitempty"`
// Size contains the actual size of the volume
// +optional
Size *resource.Quantity `json:"size,omitempty"`
// VolumeID contains the ID of the releated volume
VolumeID *HcloudVolumeID `json:"volumeID,omitempty"`
}
HcloudVolumeStatus defines the observed state of HcloudVolume
func (*HcloudVolumeStatus) DeepCopy ¶
func (in *HcloudVolumeStatus) DeepCopy() *HcloudVolumeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HcloudVolumeStatus.
func (*HcloudVolumeStatus) DeepCopyInto ¶
func (in *HcloudVolumeStatus) DeepCopyInto(out *HcloudVolumeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerServiceSpec ¶
type LoadBalancerServiceSpec struct {
Protocol string `json:"protocol"`
ListenPort int `json:"listenPort"`
DestinationPort int `json:"destinationPort"`
}
func (*LoadBalancerServiceSpec) DeepCopy ¶
func (in *LoadBalancerServiceSpec) DeepCopy() *LoadBalancerServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerServiceSpec.
func (*LoadBalancerServiceSpec) DeepCopyInto ¶
func (in *LoadBalancerServiceSpec) DeepCopyInto(out *LoadBalancerServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceLifecycle ¶
type ResourceLifecycle string
ResourceLifecycle configures the lifecycle of a resource
Source Files
¶
- baremetalmachine_conversion.go
- baremetalmachine_types.go
- baremetalmachine_webhook.go
- baremetalmachinetemplate_conversion.go
- baremetalmachinetemplate_types.go
- groupversion_info.go
- hcloudcluster_conversion.go
- hcloudcluster_types.go
- hcloudcluster_webhook.go
- hcloudmachine_conversion.go
- hcloudmachine_types.go
- hcloudmachine_webhook.go
- hcloudmachinetemplate_conversion.go
- hcloudmachinetemplate_types.go
- hcloudvolume_conversion.go
- hcloudvolume_types.go
- tags.go
- webhooks.go
- zz_generated.deepcopy.go