Documentation ¶
Index ¶
- Constants
- type OpenStackBotanist
- func (b *OpenStackBotanist) CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error
- func (b *OpenStackBotanist) DeployBackupInfrastructure() error
- func (b *OpenStackBotanist) DeployCloudSpecificControlPlane() error
- func (b *OpenStackBotanist) DeployInfrastructure() error
- func (b *OpenStackBotanist) DeployKube2IAMResources() error
- func (b *OpenStackBotanist) DestroyBackupInfrastructure() error
- func (b *OpenStackBotanist) DestroyInfrastructure() error
- func (b *OpenStackBotanist) DestroyKube2IAMResources() error
- func (b *OpenStackBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
- func (b *OpenStackBotanist) GenerateCloudControllerManagerConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateCloudProviderConfig() (string, error)
- func (b *OpenStackBotanist) GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKubeAPIServerConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKubeAPIServerServiceConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKubeControllerManagerConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateKubeSchedulerConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateMachineClassSecretData() map[string][]byte
- func (b *OpenStackBotanist) GenerateMachineConfig() ([]map[string]interface{}, operation.MachineDeployments, error)
- func (b *OpenStackBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GenerateStorageClassesConfig() (map[string]interface{}, error)
- func (b *OpenStackBotanist) GetCloudProviderName() string
- func (b *OpenStackBotanist) GetMachineClassInfo() (classKind, classPlural, classChartName string)
- func (b *OpenStackBotanist) ListMachineClasses() (sets.String, sets.String, error)
- func (b *OpenStackBotanist) RefreshCloudProviderConfig(currentConfig map[string]string) map[string]string
Constants ¶
const ( // DomainName is a constant for the key in a cloud provider secret and backup secret that holds the OpenStack domain name. DomainName = "domainName" // TenantName is a constant for the key in a cloud provider secret and backup secret that holds the OpenStack tenant name. TenantName = "tenantName" // UserName is a constant for the key in a cloud provider secret and backup secret that holds the OpenStack username. UserName = "username" // UserDomainName is a constant for the key in a cloud provider secret and backup secret that holds the OpenStack user domain name. UserDomainName = "userDomainName" // Password is a constant for the key in a cloud provider secret and backup secret that holds the OpenStack password. Password = "password" // AuthURL is a constant for the key in a backup secret that holds the OpenStack authentication URL. AuthURL = "authURL" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OpenStackBotanist ¶
OpenStackBotanist is a struct which has methods that perform OpenStack cloud-specific operations for a Shoot cluster.
func New ¶
func New(o *operation.Operation, purpose string) (*OpenStackBotanist, error)
New takes an operation object <o> and creates a new OpenStackBotanist object.
func (*OpenStackBotanist) CleanupMachineClasses ¶
func (b *OpenStackBotanist) CleanupMachineClasses(existingMachineDeployments operation.MachineDeployments) error
CleanupMachineClasses deletes all machine classes which are not part of the provided list <existingMachineDeployments>.
func (*OpenStackBotanist) DeployBackupInfrastructure ¶
func (b *OpenStackBotanist) DeployBackupInfrastructure() error
DeployBackupInfrastructure kicks off a Terraform job which creates the infrastructure resources for backup.
func (*OpenStackBotanist) DeployCloudSpecificControlPlane ¶
func (b *OpenStackBotanist) DeployCloudSpecificControlPlane() error
DeployCloudSpecificControlPlane does currently nothing for OpenStack.
func (*OpenStackBotanist) DeployInfrastructure ¶
func (b *OpenStackBotanist) DeployInfrastructure() error
DeployInfrastructure kicks off a Terraform job which deploys the infrastructure.
func (*OpenStackBotanist) DeployKube2IAMResources ¶
func (b *OpenStackBotanist) DeployKube2IAMResources() error
DeployKube2IAMResources - Not needed on OpenStack
func (*OpenStackBotanist) DestroyBackupInfrastructure ¶
func (b *OpenStackBotanist) DestroyBackupInfrastructure() error
DestroyBackupInfrastructure kicks off a Terraform job which destroys the infrastructure for backup.
func (*OpenStackBotanist) DestroyInfrastructure ¶
func (b *OpenStackBotanist) DestroyInfrastructure() error
DestroyInfrastructure kicks off a Terraform job which destroys the infrastructure.
func (*OpenStackBotanist) DestroyKube2IAMResources ¶
func (b *OpenStackBotanist) DestroyKube2IAMResources() error
DestroyKube2IAMResources - Not needed on OpenStack.
func (*OpenStackBotanist) GenerateCloudConfigUserDataConfig ¶
func (b *OpenStackBotanist) GenerateCloudConfigUserDataConfig() *common.CloudConfigUserDataConfig
GenerateCloudConfigUserDataConfig generates values which are required to render the chart shoot-cloud-config properly.
func (*OpenStackBotanist) GenerateCloudControllerManagerConfig ¶
func (b *OpenStackBotanist) GenerateCloudControllerManagerConfig() (map[string]interface{}, error)
GenerateCloudControllerManagerConfig generates the cloud provider specific values which are required to render the Deployment manifest of the cloud-controller-manager properly.
func (*OpenStackBotanist) GenerateCloudProviderConfig ¶
func (b *OpenStackBotanist) GenerateCloudProviderConfig() (string, error)
GenerateCloudProviderConfig generates the OpenStack cloud provider config. See this for more details: https://github.com/kubernetes/kubernetes/blob/master/pkg/cloudprovider/providers/openstack/openstack.go
func (*OpenStackBotanist) GenerateEtcdBackupConfig ¶
func (b *OpenStackBotanist) GenerateEtcdBackupConfig() (map[string][]byte, map[string]interface{}, error)
GenerateEtcdBackupConfig returns the etcd backup configuration for the etcd Helm chart.
func (*OpenStackBotanist) GenerateKube2IAMConfig ¶
func (b *OpenStackBotanist) GenerateKube2IAMConfig() (map[string]interface{}, error)
GenerateKube2IAMConfig - Not needed on OpenStack.
func (*OpenStackBotanist) GenerateKubeAPIServerConfig ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) GenerateKubeAPIServerExposeConfig ¶
func (b *OpenStackBotanist) GenerateKubeAPIServerExposeConfig() (map[string]interface{}, error)
GenerateKubeAPIServerExposeConfig defines the cloud provider specific values which configure how the kube-apiserver is exposed to the public.
func (*OpenStackBotanist) GenerateKubeAPIServerServiceConfig ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) GenerateKubeControllerManagerConfig ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) GenerateKubeSchedulerConfig ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) GenerateMachineClassSecretData ¶
func (b *OpenStackBotanist) GenerateMachineClassSecretData() map[string][]byte
GenerateMachineClassSecretData generates the secret data for the machine class secret (except the userData field which is computed elsewhere).
func (*OpenStackBotanist) GenerateMachineConfig ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) GenerateNginxIngressConfig ¶
func (b *OpenStackBotanist) GenerateNginxIngressConfig() (map[string]interface{}, error)
GenerateNginxIngressConfig generates values which are required to render the chart nginx-ingress properly.
func (*OpenStackBotanist) GenerateStorageClassesConfig ¶
func (b *OpenStackBotanist) GenerateStorageClassesConfig() (map[string]interface{}, error)
GenerateStorageClassesConfig generates values which are required to render the chart shoot-storageclasses properly.
func (*OpenStackBotanist) GetCloudProviderName ¶
func (b *OpenStackBotanist) GetCloudProviderName() string
GetCloudProviderName returns the Kubernetes cloud provider name for this cloud.
func (*OpenStackBotanist) GetMachineClassInfo ¶
func (b *OpenStackBotanist) 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 (*OpenStackBotanist) ListMachineClasses ¶
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 (*OpenStackBotanist) RefreshCloudProviderConfig ¶
func (b *OpenStackBotanist) RefreshCloudProviderConfig(currentConfig map[string]string) map[string]string
RefreshCloudProviderConfig refreshes the cloud provider credentials in the existing cloud provider config.