cloudbotanist

package
v0.0.0-...-be4dc66 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2019 License: Apache-2.0, BSD-2-Clause, MIT, + 1 more Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CloudBotanist

type CloudBotanist interface {
	GetCloudProviderName() string

	// Infrastructure
	DeployInfrastructure() error
	DestroyInfrastructure() error
	DeployBackupInfrastructure() error
	DestroyBackupInfrastructure() error

	// Control Plane
	GenerateCloudProviderConfig() (string, error)
	RefreshCloudProviderConfig(map[string]string) map[string]string
	GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
	GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
	GenerateKubeAPIServerServiceConfig() (map[string]interface{}, error)
	GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)
	GenerateKubeAPIServerConfig() (map[string]interface{}, error)
	GenerateCloudControllerManagerConfig() (map[string]interface{}, string, error)
	GenerateKubeControllerManagerConfig() (map[string]interface{}, error)
	GenerateKubeSchedulerConfig() (map[string]interface{}, error)
	DeployCloudSpecificControlPlane() error
	GenerateCSIConfig() (map[string]interface{}, error)

	// Machines
	GetMachineClassInfo() (string, string, string)
	GenerateMachineConfig() ([]map[string]interface{}, operation.MachineDeployments, error)
	GenerateMachineClassSecretData() map[string][]byte
	ListMachineClasses() (sets.String, sets.String, error)
	CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error

	// Addons
	DeployKube2IAMResources() error
	DestroyKube2IAMResources() error
	GenerateKube2IAMConfig() (map[string]interface{}, error)
	GenerateStorageClassesConfig() (map[string]interface{}, error)
	GenerateNginxIngressConfig() (map[string]interface{}, error)
}

CloudBotanist is an interface which must be implemented by cloud-specific Botanists. The Cloud Botanist is responsible for all operations which require IaaS specific knowledge.

func New

func New(o *operation.Operation, purpose string) (CloudBotanist, error)

New creates a Cloud Botanist for the specific cloud provider of the operation. The Cloud Botanist is responsible for all operations which require IaaS specific knowledge. We store the infrastructure credentials on the Botanist object for later usage so that we do not need to read the IaaS Secret again.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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