alicloudbotanist

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: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// AccessKeyID is a constant for the key in a cloud provider secret and backup secret that holds the Alicloud access key id.
	AccessKeyID = "accessKeyID"
	// AccessKeySecret is a constant for the key in a cloud provider secret and backup secret that holds the Alicloud access key secret.
	AccessKeySecret = "accessKeySecret"
	// UserData is a constant for the key in a cloud provider secret that holds the user data
	UserData = "userData"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AlicloudBotanist

type AlicloudBotanist struct {
	*operation.Operation
	AlicloudClient    alicloud.ClientInterface
	CloudProviderName string
}

AlicloudBotanist is a struct which has methods that perform Alicloud cloud-specific operations for a Shoot cluster.

func New

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

New takes an operation object <o> and creates a new AlicloudBotanist object.

func (*AlicloudBotanist) CleanupMachineClasses

func (b *AlicloudBotanist) CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error

CleanupMachineClasses deletes all machine classes which are not part of the provided list <existingMachineDeployments>.

func (*AlicloudBotanist) DeployBackupInfrastructure

func (b *AlicloudBotanist) DeployBackupInfrastructure() error

DeployBackupInfrastructure kicks off a Terraform job which deploys the infrastructure resources for backup. It sets up the User and the Bucket to store the backups. Allocate permission to the User to access the bucket.

func (*AlicloudBotanist) DeployCloudSpecificControlPlane

func (b *AlicloudBotanist) DeployCloudSpecificControlPlane() error

DeployCloudSpecificControlPlane does nothing currently for Alicloud

func (*AlicloudBotanist) DeployInfrastructure

func (b *AlicloudBotanist) DeployInfrastructure() error

DeployInfrastructure kicks off a Terraform job which deploys the infrastructure.

func (*AlicloudBotanist) DeployKube2IAMResources

func (b *AlicloudBotanist) DeployKube2IAMResources() error

DeployKube2IAMResources - Not needed on Alicloud

func (*AlicloudBotanist) DestroyBackupInfrastructure

func (b *AlicloudBotanist) DestroyBackupInfrastructure() error

DestroyBackupInfrastructure kicks off a Terraform job which destroys the infrastructure for etcd backup.

func (*AlicloudBotanist) DestroyInfrastructure

func (b *AlicloudBotanist) DestroyInfrastructure() error

DestroyInfrastructure kicks off a Terraform job which destroys the infrastructure.

func (*AlicloudBotanist) DestroyKube2IAMResources

func (b *AlicloudBotanist) DestroyKube2IAMResources() error

DestroyKube2IAMResources - Not needed on Alicloud

func (*AlicloudBotanist) GenerateCSIConfig

func (b *AlicloudBotanist) GenerateCSIConfig() (map[string]interface{}, error)

GenerateCSIConfig generates the configuration for CSI charts

func (*AlicloudBotanist) GenerateCloudConfigUserDataConfig

func (b *AlicloudBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig

GenerateCloudConfigUserDataConfig generates values which are required to render the chart shoot-cloud-config properly.

func (*AlicloudBotanist) GenerateCloudControllerManagerConfig

func (b *AlicloudBotanist) GenerateCloudControllerManagerConfig() (map[string]interface{}, string, error)

GenerateCloudControllerManagerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the cloud-controller-manager properly.

func (*AlicloudBotanist) GenerateCloudProviderConfig

func (b *AlicloudBotanist) GenerateCloudProviderConfig() (string, error)

GenerateCloudProviderConfig generates the Alicloud cloud provider config. See this for more details: https://github.com/kubernetes/cloud-provider-alibaba-cloud/blob/master/cloud-controller-manager/alicloud.go#L62

func (*AlicloudBotanist) GenerateEtcdBackupConfig

func (b *AlicloudBotanist) GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)

GenerateEtcdBackupConfig returns the etcd backup configuration for the etcd Helm chart.

func (*AlicloudBotanist) GenerateKube2IAMConfig

func (b *AlicloudBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)

GenerateKube2IAMConfig - Not needed on Alicloud.

func (*AlicloudBotanist) GenerateKubeAPIServerConfig

func (b *AlicloudBotanist) GenerateKubeAPIServerConfig() (map[string]interface{}, error)

GenerateKubeAPIServerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-apiserver properly.

func (*AlicloudBotanist) GenerateKubeAPIServerExposeConfig

func (b *AlicloudBotanist) GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)

GenerateKubeAPIServerExposeConfig defines the cloud provider specific values which configure how the kube-apiserver is exposed to the public.

func (*AlicloudBotanist) GenerateKubeAPIServerServiceConfig

func (b *AlicloudBotanist) GenerateKubeAPIServerServiceConfig() (map[string]interface{}, error)

GenerateKubeAPIServerServiceConfig generates the cloud provider specific values which are required to render the Service manifest of the kube-apiserver-service properly.

func (*AlicloudBotanist) GenerateKubeControllerManagerConfig

func (b *AlicloudBotanist) GenerateKubeControllerManagerConfig() (map[string]interface{}, error)

GenerateKubeControllerManagerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-controller-manager properly.

func (*AlicloudBotanist) GenerateKubeSchedulerConfig

func (b *AlicloudBotanist) GenerateKubeSchedulerConfig() (map[string]interface{}, error)

GenerateKubeSchedulerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the kube-scheduler properly.

func (*AlicloudBotanist) GenerateMachineClassSecretData

func (b *AlicloudBotanist) GenerateMachineClassSecretData() map[string][]byte

GenerateMachineClassSecretData generates the secret data for the machine class secret (except the userData field which is computed elsewhere).

func (*AlicloudBotanist) GenerateMachineConfig

func (b *AlicloudBotanist) GenerateMachineConfig() ([]map[string]interface{}, operation.MachineDeployments, error)

GenerateMachineConfig generates the configuration values for the cloud-specific machine class Helm chart. It also generates a list of corresponding MachineDeployments. The provided worker groups will be distributed over the desired availability zones. It returns the computed list of MachineClasses and MachineDeployments.

func (*AlicloudBotanist) GenerateNginxIngressConfig

func (b *AlicloudBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)

GenerateNginxIngressConfig generates values which are required to render the chart nginx-ingress properly.

func (*AlicloudBotanist) GenerateStorageClassesConfig

func (b *AlicloudBotanist) GenerateStorageClassesConfig() (map[string]interface{}, error)

GenerateStorageClassesConfig generates values which are required to render the chart shoot-storageclasses properly.

func (*AlicloudBotanist) GetCloudProviderName

func (b *AlicloudBotanist) GetCloudProviderName() string

GetCloudProviderName returns the Kubernetes cloud provider name for this cloud.

func (*AlicloudBotanist) GetMachineClassInfo

func (b *AlicloudBotanist) GetMachineClassInfo() (classKind, classPlural, classChartName string)

GetMachineClassInfo returns the name of the class kind, the plural of it and the name of the Helm chart which contains the machine class template.

func (*AlicloudBotanist) ListMachineClasses

func (b *AlicloudBotanist) ListMachineClasses() (sets.String, sets.String, error)

ListMachineClasses returns two sets of strings whereas the first contains the names of all machine classes, and the second the names of all referenced secrets.

func (*AlicloudBotanist) RefreshCloudProviderConfig

func (b *AlicloudBotanist) RefreshCloudProviderConfig(currentConfig map[string]string) map[string]string

RefreshCloudProviderConfig refreshes the cloud provider credentials in the existing cloud provider config. Not needed on Alicloud.

Jump to

Keyboard shortcuts

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