cloudbotanist

package
v0.0.0-...-48c86bf Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2018 License: Apache-2.0 Imports: 9 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)
	GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
	GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
	GenerateKubeAPIServerConfig() (map[string]interface{}, error)
	GenerateKubeControllerManagerConfig() (map[string]interface{}, error)
	GenerateKubeSchedulerConfig() (map[string]interface{}, error)

	// Machines
	GetMachineClassInfo() (string, string, string)
	GenerateMachineConfig() ([]map[string]interface{}, []operation.MachineDeployment, error)

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

	// Hooks
	ApplyCreateHook() 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