machine

package
v3.0.0-...-d6c4d9c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2023 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CloudProviderFromSpec

func CloudProviderFromSpec(cloudProviderSpec interface{}) (kubermaticv1.CloudProvider, error)

func CompleteCloudProviderSpec

func CompleteCloudProviderSpec(cloudProviderSpec interface{}, cloudProvider kubermaticv1.CloudProvider, cluster *kubermaticv1.Cluster, datacenter *kubermaticv1.Datacenter, os kubermaticv1.OperatingSystem) (interface{}, error)

CompleteCloudProviderSpec takes the given cloudProviderSpec (if any) and fills in the other required fields (for AWS for example the VPCID or instance profile name) based on the datacenter (static configuration) and the cluster object (dynamic infos that some providers write into the spec). The result is the cloudProviderSpec being ready to be marshalled into a MachineSpec to ultimately create the MachineDeployment.

func CreateProviderConfig

func CreateProviderConfig(cloudProvider kubermaticv1.CloudProvider, cloudProviderSpec interface{}, osSpec interface{}, networkConfig *providerconfig.NetworkConfig, sshPubKeys []string) (*providerconfig.Config, error)

func CreateProviderSpec

func CreateProviderSpec(providerConfig *providerconfig.Config) (*clusterv1alpha1.ProviderSpec, error)

func DecodeCloudProviderSpec

func DecodeCloudProviderSpec(cloudProvider kubermaticv1.CloudProvider, pconfig providerconfig.Config) (interface{}, error)

func EncodeAsRawExtension

func EncodeAsRawExtension(value interface{}) (runtime.RawExtension, error)

func OperatingSystemFromSpec

func OperatingSystemFromSpec(osSpec interface{}) (kubermaticv1.OperatingSystem, error)

OperatingSystemFromSpec returns the OS name for the given OS spec.

Types

type MachineBuilder

type MachineBuilder struct {
	// contains filtered or unexported fields
}

func NewBuilder

func NewBuilder() *MachineBuilder

func (*MachineBuilder) AddSSHKey

func (*MachineBuilder) AddSSHPublicKey

func (b *MachineBuilder) AddSSHPublicKey(pubKeys ...string) *MachineBuilder

func (*MachineBuilder) BuildCloudProviderSpec

func (b *MachineBuilder) BuildCloudProviderSpec() (interface{}, error)

func (*MachineBuilder) BuildProviderConfig

func (b *MachineBuilder) BuildProviderConfig() (*providerconfig.Config, error)

func (*MachineBuilder) BuildProviderSpec

func (b *MachineBuilder) BuildProviderSpec() (*clusterv1alpha1.ProviderSpec, error)

func (*MachineBuilder) WithCloudProvider

func (b *MachineBuilder) WithCloudProvider(cloudProvider kubermaticv1.CloudProvider) *MachineBuilder

func (*MachineBuilder) WithCloudProviderSpec

func (b *MachineBuilder) WithCloudProviderSpec(cpSpec interface{}) *MachineBuilder

func (*MachineBuilder) WithCluster

func (b *MachineBuilder) WithCluster(cluster *kubermaticv1.Cluster) *MachineBuilder

func (*MachineBuilder) WithDatacenter

func (b *MachineBuilder) WithDatacenter(datacenter *kubermaticv1.Datacenter) *MachineBuilder

func (*MachineBuilder) WithNetworkConfig

func (b *MachineBuilder) WithNetworkConfig(networkConfig *providerconfig.NetworkConfig) *MachineBuilder

func (*MachineBuilder) WithOperatingSystemSpec

func (b *MachineBuilder) WithOperatingSystemSpec(osSpec interface{}) *MachineBuilder

WithOperatingSystemSpec works great when combined with the convenient [OS]Builder helpers in this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL