ionos

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2022 License: Apache-2.0, MIT Imports: 7 Imported by: 0

Documentation

Overview

Package ionos provides types and functions used for ionos interaction

Package ionos provides types and functions used for ionos interaction

Package ionos provides types and functions used for ionos interaction

Index

Constants

View Source
const (
	// Name is the name of the IONOS provider controller.
	Name = "provider-ionos"

	// MachineControllerManagerImageName is the name of the MachineControllerManager image.
	MachineControllerManagerImageName = "machine-controller-manager"
	// MCMProviderIonosImageName is the namne of the IONOS provider plugin image.
	MCMProviderIonosImageName = "machine-controller-manager-provider-ionos"
	// CloudControllerImageName is the name of the external IONOS CloudProvider image.
	CloudControllerImageName = "ionos-cloud-controller-manager"

	// CloudControllerManagerName is the constant for the name of the CloudController deployed by the control plane controller.
	CloudControllerManagerName = "cloud-controller-manager"

	// CloudControllerManagerServerName is the constant for the name of the CloudController deployed by the control plane controller.
	CloudControllerManagerServerName = "cloud-controller-manager-server"
	// CSIAttacherImageName is the name of the CSI attacher image.
	CSIAttacherImageName = "csi-attacher"
	// CSINodeDriverRegistrarImageName is the name of the CSI driver registrar image.
	CSINodeDriverRegistrarImageName = "csi-node-driver-registrar"
	// CSIProvisionerImageName is the name of the CSI provisioner image.
	CSIProvisionerImageName = "csi-provisioner"
	// CSIDriverControllerImageName is the name of the CSI driver controller plugin image.
	CSIDriverControllerImageName = "csi-driver-controller"
	// CSIDriverNodeImageName is the name of the CSI driver node plugin image.
	CSIDriverNodeImageName = "csi-driver-node"
	// CSIResizerImageName is the name of the csi-resizer image.
	CSIResizerImageName = "csi-resizer"
	// LivenessProbeImageName is the name of the liveness-probe image.
	LivenessProbeImageName = "liveness-probe"

	// Cloud Controller Manager IONOS credentials user name key
	IonosCCMCredentialsUserKey = "ionosCCMUser"
	// Cloud Controller Manager IONOS credentials password key
	IonosCCMCredentialsPasswordKey = "ionosCCMPassword"
	// Common IONOS credentials user name key
	IonosCredentialsUserKey = "ionosUser"
	// Common IONOS credentials password key
	IonosCredentialsPasswordKey = "ionosPassword"
	// Container Storage Interface driver IONOS credentials user name key
	IonosCSICredentialsUserKey = "ionosCSIUser"
	// Container Storage Interface driver IONOS credentials password key
	IonosCSICredentialsPasswordKey = "ionosCSIPassword"
	// Machine Controller Manager IONOS credentials user name key
	IonosMCMCredentialsUserKey = "ionosMCMUser"
	// Machine Controller Manager IONOS credentials password key
	IonosMCMCredentialsPasswordKey = "ionosMCMPassword"

	// CloudProviderConfig is the name of the configmap containing the cloud provider config.
	CloudProviderConfig = "cloud-provider-config"
	// CloudProviderConfigMapKey is the key storing the cloud provider config as value in the cloud provider configmap.
	CloudProviderConfigMapKey = "cloudprovider.conf"
	// MachineControllerManagerName is a constant for the name of the machine-controller-manager.
	MachineControllerManagerName = "machine-controller-manager"
	// MachineControllerManagerVpaName is the name of the VerticalPodAutoscaler of the machine-controller-manager deployment.
	MachineControllerManagerVpaName = "machine-controller-manager-vpa"
	// MachineControllerManagerMonitoringConfigName is the name of the ConfigMap containing monitoring stack configurations for machine-controller-manager.
	MachineControllerManagerMonitoringConfigName = "machine-controller-manager-monitoring-config"

	// CSIProvisionerName is a constant for the name of the csi-provisioner component.
	CSIProvisionerName = "csi-provisioner"
	// CSIAttacherName is a constant for the name of the csi-attacher component.
	CSIAttacherName = "csi-attacher"
	// CSIResizerName is a constant for the name of the csi-resizer component.
	CSIResizerName = "csi-resizer"
	// CSIControllerName is a constant for the name of the ionos-csi-controller component.
	CSIControllerName = "ionos-csi-controller"
	// CSINodeName is a constant for the chart name for a CSI node deployment in the shoot.
	CSINodeName = "ionos-csi-node"
	// CSIDriverName is a constant for the name of the csi-driver component.
	CSIDriverName = "csi-driver"
)
View Source
const Type = "ionos"

Type is the type of resources managed by the ionos actuator.

Variables

View Source
var (
	// ChartsPath is the path to the charts
	ChartsPath = filepath.Join("charts")
	// InternalChartsPath is the path to the internal charts
	InternalChartsPath = filepath.Join(ChartsPath, "internal")

	// UsernamePrefix is a constant for the username prefix of components deployed by OpenStack.
	UsernamePrefix = extensionsv1alpha1.SchemeGroupVersion.Group + ":" + Name + ":"
)

Functions

This section is empty.

Types

type Credentials

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

Credentials contains the necessary ionos credential information.

func ExtractCredentials

func ExtractCredentials(secret *corev1.Secret) (*Credentials, error)

ExtractCredentials generates a credentials object for a given provider secret.

PARAMETERS secret *corev1.Secret Secret to extract tokens from

func GetCredentials

func GetCredentials(ctx context.Context, c client.Client, secretRef corev1.SecretReference) (*Credentials, error)

GetCredentials computes for a given context and infrastructure the corresponding credentials object.

PARAMETERS ctx context.Context Execution context c client.Client Controller client secretRef corev1.SecretReference Secret reference to read credentials from

func (*Credentials) IonosCCM

func (c *Credentials) IonosCCM() CredentialsStruct

CCM returns the token used for the Cloud Controller Manager.

func (*Credentials) IonosCSI

func (c *Credentials) IonosCSI() CredentialsStruct

CSI returns the token used for the Container Storage Interface driver.

func (*Credentials) IonosMCM

func (c *Credentials) IonosMCM() CredentialsStruct

MCM returns the token used for the Machine Controller Manager.

type CredentialsStruct

type CredentialsStruct struct {
	User     string
	Password string
}

Directories

Path Synopsis
Package apis is the main package for ionos specific APIs
Package apis is the main package for ionos specific APIs
config
Package config provides ionos.provider.extensions.config.gardener.cloud
Package config provides ionos.provider.extensions.config.gardener.cloud
config/install
Package install provides functions used for registration of ionos.provider.extensions.config.gardener.cloud
Package install provides functions used for registration of ionos.provider.extensions.config.gardener.cloud
config/loader
Package loader contains functions used for reading ionos.provider.extensions.config.gardener.cloud
Package loader contains functions used for reading ionos.provider.extensions.config.gardener.cloud
config/v1alpha1
Package v1alpha1 provides ionos.provider.extensions.config.gardener.cloud/v1alpha1
Package v1alpha1 provides ionos.provider.extensions.config.gardener.cloud/v1alpha1
controller
Package controller provides functions to access controller specifications
Package controller provides functions to access controller specifications
install
Package install provides functions used for registration of ionos.provider.extensions.gardener.cloud
Package install provides functions used for registration of ionos.provider.extensions.gardener.cloud
mock
Package mock provides all methods required to simulate a IONOS provider environment
Package mock provides all methods required to simulate a IONOS provider environment
transcoder
Package transcoder is used for API related object transformations
Package transcoder is used for API related object transformations
v1alpha1
Package v1alpha1 contains the IONOS provider API resources.
Package v1alpha1 contains the IONOS provider API resources.
validation
Package validation contains functions to validate controller specifications
Package validation contains functions to validate controller specifications

Jump to

Keyboard shortcuts

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