Documentation ¶
Overview ¶
Package apis is the main package for HCloud specific APIs
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs ¶
Package apis is the main package for HCloud specific APIs
Index ¶
- Constants
- Variables
- func GetClientForToken(token string) *hcloud.Client
- func GetRegionFromZone(zone string) string
- func GetSSHFingerprint(publicKey []byte) (string, error)
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- func SetClientForToken(token string, client *hcloud.Client)
- type CPLoadBalancerClass
- type CloudControllerManagerConfig
- type CloudProfileConfig
- type ControlPlaneConfig
- type DockerDaemonOptions
- type InfrastructureConfig
- type InfrastructureConfigNetwork
- type InfrastructureConfigNetworkIDs
- type InfrastructureConfigNetworks
- type InfrastructureStatus
- type MachineImage
- type MachineImageVersion
- type MachineImages
- type MachineTypeOptions
- type RegionSpec
- type WorkerConfig
- type WorkerStatus
Constants ¶
const GroupName = "hcloud.provider.extensions.gardener.cloud"
GroupName is the group name use in this package
Variables ¶
var ( // SchemeBuilder used to register the Shoot resource. SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme is a pointer to SchemeBuilder.AddToScheme. AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func GetClientForToken ¶
GetClientForToken returns an underlying HCloud client for the given token.
PARAMETERS token string Token to look up client instance for
func GetRegionFromZone ¶ added in v0.2.0
GetRegionFromZone returns the region for a given zone string
PARAMETERS zone string Zone
func GetSSHFingerprint ¶ added in v0.3.7
GetSSHFingerprint returns the calculated fingerprint for an SSH public key.
PARAMETERS publicKey []byte SSH public key
func Kind ¶
Kind takes an unqualified kind and returns a Group qualified GroupKind
PARAMETERS kind string Unqualified kind
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
PARAMETERS resource string Unqualified resource
func SetClientForToken ¶
SetClientForToken sets a preconfigured HCloud client for the given token.
PARAMETERS token string Token to look up client instance for client *hcloud.Client Preconfigured HCloud client
Types ¶
type CPLoadBalancerClass ¶
type CPLoadBalancerClass struct { Name string `json:"name"` // IPPoolName is the name of the NSX-T IP pool. // +optional IPPoolName *string `json:"ipPoolName,omitempty"` // TCPAppProfileName is the profile name of the load balaner profile for TCP // +optional TCPAppProfileName *string `json:"tcpAppProfileName,omitempty"` // UDPAppProfileName is the profile name of the load balaner profile for UDP // +optional UDPAppProfileName *string `json:"udpAppProfileName,omitempty"` }
CPLoadBalancerClass provides the name of a load balancer
func (*CPLoadBalancerClass) DeepCopy ¶
func (in *CPLoadBalancerClass) DeepCopy() *CPLoadBalancerClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPLoadBalancerClass.
func (*CPLoadBalancerClass) DeepCopyInto ¶
func (in *CPLoadBalancerClass) DeepCopyInto(out *CPLoadBalancerClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudControllerManagerConfig ¶
type CloudControllerManagerConfig struct { // FeatureGates contains information about enabled feature gates. // +optional FeatureGates map[string]bool `json:"featureGates,omitempty"` }
CloudControllerManagerConfig contains configuration settings for the cloud-controller-manager.
func (*CloudControllerManagerConfig) DeepCopy ¶
func (in *CloudControllerManagerConfig) DeepCopy() *CloudControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudControllerManagerConfig.
func (*CloudControllerManagerConfig) DeepCopyInto ¶
func (in *CloudControllerManagerConfig) DeepCopyInto(out *CloudControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudProfileConfig ¶
type CloudProfileConfig struct { metav1.TypeMeta `json:",inline"` // Regions is the specification of regions and zones topology Regions []RegionSpec `json:"regions"` // MachineImages is the list of machine images that are understood by the controller. It maps // logical names and versions to provider-specific identifiers. MachineImages []MachineImages `json:"machineImages"` // DefaultStorageFsType is the filesystem type of the HCloud storage to use DefaultStorageFsType string `json:"defaultStorageFsType"` // MachineTypeOptions is the list of machine type options to set additional options for individual machine types. // +optional MachineTypeOptions []MachineTypeOptions `json:"machineTypeOptions,omitempty"` // DockerDaemonOptions contains configuration options for docker daemon service // +optional DockerDaemonOptions *DockerDaemonOptions `json:"dockerDaemonOptions,omitempty"` }
CloudProfileConfig contains provider-specific configuration that is embedded into Gardener's `CloudProfile` resource.
func (*CloudProfileConfig) DeepCopy ¶
func (in *CloudProfileConfig) DeepCopy() *CloudProfileConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProfileConfig.
func (*CloudProfileConfig) DeepCopyInto ¶
func (in *CloudProfileConfig) DeepCopyInto(out *CloudProfileConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudProfileConfig) DeepCopyObject ¶
func (in *CloudProfileConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlPlaneConfig ¶
type ControlPlaneConfig struct { metav1.TypeMeta `json:",inline"` // Zone is the HCloud zone. Zone string `json:"zone"` // CloudControllerManager contains configuration settings for the cloud-controller-manager. // +optional CloudControllerManager *CloudControllerManagerConfig `json:"cloudControllerManager,omitempty"` // LoadBalancerClasses lists the load balancer classes to be used. // +optional LoadBalancerClasses []CPLoadBalancerClass `json:"loadBalancerClasses,omitempty"` // LoadBalancerSize can override the default of the NSX-T load balancer size ("SMALL", "MEDIUM", or "LARGE") defined in the cloud profile. // +optional LoadBalancerSize *string `json:"loadBalancerSize,omitempty"` }
ControlPlaneConfig contains configuration settings for the control plane.
func (*ControlPlaneConfig) DeepCopy ¶
func (in *ControlPlaneConfig) DeepCopy() *ControlPlaneConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneConfig.
func (*ControlPlaneConfig) DeepCopyInto ¶
func (in *ControlPlaneConfig) DeepCopyInto(out *ControlPlaneConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneConfig) DeepCopyObject ¶
func (in *ControlPlaneConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DockerDaemonOptions ¶
type DockerDaemonOptions struct { // HTTPProxyConf contains HTTP/HTTPS proxy configuration for Docker daemon // +optional HTTPProxyConf *string `json:"httpProxyConf,omitempty"` // InsecureRegistries adds the given registries to Docker on the worker nodes // (see https://docs.docker.com/registry/insecure/) // +optional InsecureRegistries []string `json:"insecureRegistries,omitempty"` }
DockerDaemonOptions contains configuration options for Docker daemon service
func (*DockerDaemonOptions) DeepCopy ¶
func (in *DockerDaemonOptions) DeepCopy() *DockerDaemonOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DockerDaemonOptions.
func (*DockerDaemonOptions) DeepCopyInto ¶
func (in *DockerDaemonOptions) DeepCopyInto(out *DockerDaemonOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureConfig ¶
type InfrastructureConfig struct { metav1.TypeMeta `json:",inline"` // FloatingPoolName contains the FloatingPoolName name in which LoadBalancer FIPs should be created. // +optional FloatingPoolName string `json:"floatingPoolName,omitempty"` // Networks is the HCloud specific network configuration // +optional Networks *InfrastructureConfigNetworks `json:"networks,omitempty"` }
InfrastructureConfig infrastructure configuration resource
func (*InfrastructureConfig) DeepCopy ¶
func (in *InfrastructureConfig) DeepCopy() *InfrastructureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfig.
func (*InfrastructureConfig) DeepCopyInto ¶
func (in *InfrastructureConfig) DeepCopyInto(out *InfrastructureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InfrastructureConfig) DeepCopyObject ¶
func (in *InfrastructureConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InfrastructureConfigNetwork ¶ added in v0.4.0
type InfrastructureConfigNetwork struct { // Workers is a CIDRs of a worker subnet (private) to create (used for the VMs). Cidr string `json:"cidr"` // Workers is a CIDRs of a worker subnet (private) to create (used for the VMs). Zone hcloud.NetworkZone `json:"zone,omitempty"` }
InfrastructureConfig holds information about the Kubernetes and infrastructure network.
func (*InfrastructureConfigNetwork) DeepCopy ¶ added in v0.4.0
func (in *InfrastructureConfigNetwork) DeepCopy() *InfrastructureConfigNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfigNetwork.
func (*InfrastructureConfigNetwork) DeepCopyInto ¶ added in v0.4.0
func (in *InfrastructureConfigNetwork) DeepCopyInto(out *InfrastructureConfigNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureConfigNetworkIDs ¶ added in v0.4.0
type InfrastructureConfigNetworkIDs struct { // Workers is the HCloud network ID created. Workers string `json:"workers"` }
Networks holds information about the Kubernetes and infrastructure networks.
func (*InfrastructureConfigNetworkIDs) DeepCopy ¶ added in v0.4.0
func (in *InfrastructureConfigNetworkIDs) DeepCopy() *InfrastructureConfigNetworkIDs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfigNetworkIDs.
func (*InfrastructureConfigNetworkIDs) DeepCopyInto ¶ added in v0.4.0
func (in *InfrastructureConfigNetworkIDs) DeepCopyInto(out *InfrastructureConfigNetworkIDs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureConfigNetworks ¶ added in v0.4.0
type InfrastructureConfigNetworks struct { // WorkersNetwork is a struct of a worker subnet (private) configuration to create (used for the VMs). WorkersConfiguration *InfrastructureConfigNetwork `json:"workersConfiguration"` // Workers is a CIDRs of a worker subnet (private) to create (used for the VMs). Workers string `json:"workers,omitempty"` }
Networks holds information about the Kubernetes and infrastructure networks.
func (*InfrastructureConfigNetworks) DeepCopy ¶ added in v0.4.0
func (in *InfrastructureConfigNetworks) DeepCopy() *InfrastructureConfigNetworks
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfigNetworks.
func (*InfrastructureConfigNetworks) DeepCopyInto ¶ added in v0.4.0
func (in *InfrastructureConfigNetworks) DeepCopyInto(out *InfrastructureConfigNetworks)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InfrastructureStatus ¶
type InfrastructureStatus struct { metav1.TypeMeta `json:",inline"` // SSHFingerprint contains the SSH fingerprint. SSHFingerprint string `json:"sshFingerprint"` // PlacementGroupIDs contains the placement group IDs. PlacementGroupIDs map[string]string `json:"placementGroupID,omitempty"` // PlacementGroupID contains the placement group ID. PlacementGroupID string `json:"placementGroupID,omitempty"` // FloatingPoolName contains the FloatingPoolName name in which LoadBalancer FIPs should be created. // +optional FloatingPoolName string `json:"floatingPoolName,omitempty"` // Networks is the HCloud specific network configuration // +optional NetworkIDs *InfrastructureConfigNetworkIDs `json:"networkIDs,omitempty"` }
InfrastructureStatus contains information about created infrastructure resources.
func (*InfrastructureStatus) DeepCopy ¶
func (in *InfrastructureStatus) DeepCopy() *InfrastructureStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureStatus.
func (*InfrastructureStatus) DeepCopyInto ¶
func (in *InfrastructureStatus) DeepCopyInto(out *InfrastructureStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InfrastructureStatus) DeepCopyObject ¶
func (in *InfrastructureStatus) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MachineImage ¶
type MachineImage struct { // Name is the logical name of the machine image. Name string `json:"name"` // Version is the logical version of the machine image. Version string `json:"version"` }
MachineImage is a mapping from logical names and versions to provider-specific machine image data.
func (*MachineImage) DeepCopy ¶
func (in *MachineImage) DeepCopy() *MachineImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImage.
func (*MachineImage) DeepCopyInto ¶
func (in *MachineImage) DeepCopyInto(out *MachineImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineImageVersion ¶
type MachineImageVersion struct { // Version is the version of the image. Version string `json:"version"` // ImageName is the Hetzner Cloud image name if not matching name + "-" + version. // +optional ImageName string `json:"imageName,omitempty"` }
MachineImageVersion contains a version and a provider-specific identifier.
func (*MachineImageVersion) DeepCopy ¶
func (in *MachineImageVersion) DeepCopy() *MachineImageVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImageVersion.
func (*MachineImageVersion) DeepCopyInto ¶
func (in *MachineImageVersion) DeepCopyInto(out *MachineImageVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineImages ¶
type MachineImages struct { // Name is the logical name of the machine image. Name string `json:"name"` // Versions contains versions and a provider-specific identifier. Versions []MachineImageVersion `json:"versions"` }
MachineImages is a mapping from logical names and versions to provider-specific identifiers.
func (*MachineImages) DeepCopy ¶
func (in *MachineImages) DeepCopy() *MachineImages
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImages.
func (*MachineImages) DeepCopyInto ¶
func (in *MachineImages) DeepCopyInto(out *MachineImages)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MachineTypeOptions ¶
type MachineTypeOptions struct { // Name is the name of the machine type Name string `json:"name"` // ExtraConfig allows to specify additional VM options. // e.g. sched.swap.vmxSwapEnabled=false to disable the VMX process swap file // +optional ExtraConfig map[string]string `json:"extraConfig,omitempty"` }
MachineTypeOptions defines additional VM options for an machine type given by name
func (*MachineTypeOptions) DeepCopy ¶
func (in *MachineTypeOptions) DeepCopy() *MachineTypeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineTypeOptions.
func (*MachineTypeOptions) DeepCopyInto ¶
func (in *MachineTypeOptions) DeepCopyInto(out *MachineTypeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RegionSpec ¶
type RegionSpec struct { // Name is the name of the region Name string `json:"name"` // MachineImages is the list of machine images that are understood by the controller. If provided, it overwrites the global // MachineImages of the CloudProfileConfig // +optional MachineImages []MachineImages `json:"machineImages,omitempty"` }
RegionSpec specifies the topology of a region and its zones. A region consists of a Vcenter host, transport zone and optionally a data center. A zone in a region consists of a data center (if not specified in the region), a computer cluster, and optionally a resource zone or host system.
func (*RegionSpec) DeepCopy ¶
func (in *RegionSpec) DeepCopy() *RegionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSpec.
func (*RegionSpec) DeepCopyInto ¶
func (in *RegionSpec) DeepCopyInto(out *RegionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkerConfig ¶ added in v0.5.3
type WorkerConfig struct { metav1.TypeMeta // type of the placementgroup for current worker pool. Note that hetzner currently only supports type "spread" // moreover a placementgroup cannot hold more than 10 machines on hetzner PlacementGroupType string `json:"placementGroupType"` }
WorkerConfig
func (*WorkerConfig) DeepCopy ¶ added in v0.5.3
func (in *WorkerConfig) DeepCopy() *WorkerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerConfig.
func (*WorkerConfig) DeepCopyInto ¶ added in v0.5.3
func (in *WorkerConfig) DeepCopyInto(out *WorkerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkerConfig) DeepCopyObject ¶ added in v0.5.3
func (in *WorkerConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkerStatus ¶
type WorkerStatus struct { metav1.TypeMeta `json:",inline"` // MachineImages is a list of machine images that have been used in this worker. Usually, the extension controller // gets the mapping from name/version to the provider-specific machine image data in its componentconfig. However, if // a version that is still in use gets removed from this componentconfig it cannot reconcile anymore existing `Worker` // resources that are still using this version. Hence, it stores the used versions in the provider status to ensure // reconciliation is possible. // +optional MachineImages []MachineImage `json:"machineImages,omitempty"` PlacementGroupIDs map[string]int64 `json:"placementGroupIds,omitempty"` }
WorkerStatus contains information about created worker resources.
func (*WorkerStatus) DeepCopy ¶
func (in *WorkerStatus) DeepCopy() *WorkerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerStatus.
func (*WorkerStatus) DeepCopyInto ¶
func (in *WorkerStatus) DeepCopyInto(out *WorkerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkerStatus) DeepCopyObject ¶
func (in *WorkerStatus) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package config provides hcloud.provider.extensions.config.gardener.cloud
|
Package config provides hcloud.provider.extensions.config.gardener.cloud |
install
Package install provides functions used for registration of hcloud.provider.extensions.config.gardener.cloud
|
Package install provides functions used for registration of hcloud.provider.extensions.config.gardener.cloud |
loader
Package loader contains functions used for reading hcloud.provider.extensions.config.gardener.cloud
|
Package loader contains functions used for reading hcloud.provider.extensions.config.gardener.cloud |
v1alpha1
Package v1alpha1 provides hcloud.provider.extensions.config.gardener.cloud/v1alpha1
|
Package v1alpha1 provides hcloud.provider.extensions.config.gardener.cloud/v1alpha1 |
Package controller provides functions to access controller specifications
|
Package controller provides functions to access controller specifications |
Package install provides functions used for registration of hcloud.provider.extensions.gardener.cloud
|
Package install provides functions used for registration of hcloud.provider.extensions.gardener.cloud |
Package mock provides all methods required to simulate a HCloud provider environment
|
Package mock provides all methods required to simulate a HCloud provider environment |
Package transcoder is used for API related object transformations
|
Package transcoder is used for API related object transformations |
Package v1alpha1 contains the HCloud provider API resources.
|
Package v1alpha1 contains the HCloud provider API resources. |
Package validation contains functions to validate controller specifications
|
Package validation contains functions to validate controller specifications |