Documentation ¶
Index ¶
- Constants
- func AnyImmutableFieldChanged(oldVdc, newVdc *v1alpha1.VSphereDatacenterConfig, ...) bool
- func NeedsNewControlPlaneTemplate(oldSpec, newSpec *cluster.Spec, ...) bool
- func NeedsNewEtcdTemplate(oldSpec, newSpec *cluster.Spec, ...) bool
- func NeedsNewKubeadmConfigTemplate(newWorkerNodeGroup *v1alpha1.WorkerNodeGroupConfiguration, ...) bool
- func NeedsNewWorkloadTemplate(oldSpec, newSpec *cluster.Spec, ...) bool
- func NewProvider(datacenterConfig *v1alpha1.VSphereDatacenterConfig, ...) *vsphereProvider
- func NewProviderCustomNet(datacenterConfig *v1alpha1.VSphereDatacenterConfig, ...) *vsphereProvider
- func SetupEnvVars(datacenterConfig *anywherev1.VSphereDatacenterConfig) error
- type ClusterResourceSetManager
- type Defaulter
- type PrivAssociation
- type ProviderGovcClient
- type ProviderKubectlClient
- type Spec
- type VSphereClientBuilder
- type Validator
- type VsphereTemplateBuilder
Constants ¶
View Source
const (
CredentialsObjectName = "vsphere-credentials"
)
Variables ¶
This section is empty.
Functions ¶
func AnyImmutableFieldChanged ¶
func AnyImmutableFieldChanged(oldVdc, newVdc *v1alpha1.VSphereDatacenterConfig, oldVmc, newVmc *v1alpha1.VSphereMachineConfig) bool
func NeedsNewControlPlaneTemplate ¶
func NeedsNewControlPlaneTemplate(oldSpec, newSpec *cluster.Spec, oldVdc, newVdc *v1alpha1.VSphereDatacenterConfig, oldVmc, newVmc *v1alpha1.VSphereMachineConfig) bool
func NeedsNewEtcdTemplate ¶
func NeedsNewEtcdTemplate(oldSpec, newSpec *cluster.Spec, oldVdc, newVdc *v1alpha1.VSphereDatacenterConfig, oldVmc, newVmc *v1alpha1.VSphereMachineConfig) bool
func NeedsNewKubeadmConfigTemplate ¶ added in v0.7.1
func NeedsNewKubeadmConfigTemplate(newWorkerNodeGroup *v1alpha1.WorkerNodeGroupConfiguration, oldWorkerNodeGroup *v1alpha1.WorkerNodeGroupConfiguration, oldWorkerNodeVmc *v1alpha1.VSphereMachineConfig, newWorkerNodeVmc *v1alpha1.VSphereMachineConfig) bool
func NeedsNewWorkloadTemplate ¶
func NeedsNewWorkloadTemplate(oldSpec, newSpec *cluster.Spec, oldVdc, newVdc *v1alpha1.VSphereDatacenterConfig, oldVmc, newVmc *v1alpha1.VSphereMachineConfig) bool
func NewProvider ¶
func NewProvider(datacenterConfig *v1alpha1.VSphereDatacenterConfig, machineConfigs map[string]*v1alpha1.VSphereMachineConfig, clusterConfig *v1alpha1.Cluster, providerGovcClient ProviderGovcClient, providerKubectlClient ProviderKubectlClient, writer filewriter.FileWriter, now types.NowFunc, skipIpCheck bool, resourceSetManager ClusterResourceSetManager) *vsphereProvider
func NewProviderCustomNet ¶
func NewProviderCustomNet(datacenterConfig *v1alpha1.VSphereDatacenterConfig, machineConfigs map[string]*v1alpha1.VSphereMachineConfig, clusterConfig *v1alpha1.Cluster, providerGovcClient ProviderGovcClient, providerKubectlClient ProviderKubectlClient, writer filewriter.FileWriter, netClient networkutils.NetClient, now types.NowFunc, skipIpCheck bool, resourceSetManager ClusterResourceSetManager, v *Validator) *vsphereProvider
func SetupEnvVars ¶ added in v0.7.0
func SetupEnvVars(datacenterConfig *anywherev1.VSphereDatacenterConfig) error
Types ¶
type ClusterResourceSetManager ¶ added in v0.6.0
type Defaulter ¶ added in v0.7.0
type Defaulter struct {
// contains filtered or unexported fields
}
func NewDefaulter ¶ added in v0.7.0
func NewDefaulter(govc ProviderGovcClient) *Defaulter
func (*Defaulter) SetDefaultsForDatacenterConfig ¶ added in v0.7.0
func (d *Defaulter) SetDefaultsForDatacenterConfig(ctx context.Context, datacenterConfig *anywherev1.VSphereDatacenterConfig) error
type PrivAssociation ¶ added in v0.11.2
type PrivAssociation struct {
// contains filtered or unexported fields
}
type ProviderGovcClient ¶
type ProviderGovcClient interface { SearchTemplate(ctx context.Context, datacenter, template string) (string, error) LibraryElementExists(ctx context.Context, library string) (bool, error) GetLibraryElementContentVersion(ctx context.Context, element string) (string, error) DeleteLibraryElement(ctx context.Context, element string) error TemplateHasSnapshot(ctx context.Context, template string) (bool, error) GetWorkloadAvailableSpace(ctx context.Context, datastore string) (float64, error) ValidateVCenterSetupMachineConfig(ctx context.Context, datacenterConfig *v1alpha1.VSphereDatacenterConfig, machineConfig *v1alpha1.VSphereMachineConfig, selfSigned *bool) error ValidateVCenterConnection(ctx context.Context, server string) error ValidateVCenterAuthentication(ctx context.Context) error IsCertSelfSigned(ctx context.Context) bool GetCertThumbprint(ctx context.Context) (string, error) ConfigureCertThumbprint(ctx context.Context, server, thumbprint string) error DatacenterExists(ctx context.Context, datacenter string) (bool, error) NetworkExists(ctx context.Context, network string) (bool, error) CreateLibrary(ctx context.Context, datastore, library string) error DeployTemplateFromLibrary(ctx context.Context, templateDir, templateName, library, datacenter, datastore, network, resourcePool string, resizeDisk2 bool) error ImportTemplate(ctx context.Context, library, ovaURL, name string) error GetTags(ctx context.Context, path string) (tags []string, err error) ListTags(ctx context.Context) ([]string, error) CreateTag(ctx context.Context, tag, category string) error AddTag(ctx context.Context, path, tag string) error ListCategories(ctx context.Context) ([]string, error) CreateCategoryForVM(ctx context.Context, name string) error CreateUser(ctx context.Context, username string, password string) error UserExists(ctx context.Context, username string) (bool, error) CreateGroup(ctx context.Context, name string) error GroupExists(ctx context.Context, name string) (bool, error) AddUserToGroup(ctx context.Context, name string, username string) error RoleExists(ctx context.Context, name string) (bool, error) CreateRole(ctx context.Context, name string, privileges []string) error SetGroupRoleOnObject(ctx context.Context, principal string, role string, object string, domain string) error }
type ProviderKubectlClient ¶
type ProviderKubectlClient interface { ApplyKubeSpecFromBytes(ctx context.Context, cluster *types.Cluster, data []byte) error CreateNamespaceIfNotPresent(ctx context.Context, kubeconfig string, namespace string) error LoadSecret(ctx context.Context, secretObject string, secretObjType string, secretObjectName string, kubeConfFile string) error GetEksaCluster(ctx context.Context, cluster *types.Cluster, clusterName string) (*v1alpha1.Cluster, error) GetEksaVSphereDatacenterConfig(ctx context.Context, vsphereDatacenterConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.VSphereDatacenterConfig, error) GetEksaVSphereMachineConfig(ctx context.Context, vsphereMachineConfigName string, kubeconfigFile string, namespace string) (*v1alpha1.VSphereMachineConfig, error) GetMachineDeployment(ctx context.Context, machineDeploymentName string, opts ...executables.KubectlOpt) (*clusterv1.MachineDeployment, error) GetKubeadmControlPlane(ctx context.Context, cluster *types.Cluster, clusterName string, opts ...executables.KubectlOpt) (*controlplanev1.KubeadmControlPlane, error) GetEtcdadmCluster(ctx context.Context, cluster *types.Cluster, clusterName string, opts ...executables.KubectlOpt) (*etcdv1.EtcdadmCluster, error) GetSecretFromNamespace(ctx context.Context, kubeconfigFile, name, namespace string) (*corev1.Secret, error) UpdateAnnotation(ctx context.Context, resourceType, objectName string, annotations map[string]string, opts ...executables.KubectlOpt) error RemoveAnnotationInNamespace(ctx context.Context, resourceType, objectName, key string, cluster *types.Cluster, namespace string) error SearchVsphereMachineConfig(ctx context.Context, name string, kubeconfigFile string, namespace string) ([]*v1alpha1.VSphereMachineConfig, error) SearchVsphereDatacenterConfig(ctx context.Context, name string, kubeconfigFile string, namespace string) ([]*v1alpha1.VSphereDatacenterConfig, error) SetDaemonSetImage(ctx context.Context, kubeconfigFile, name, namespace, container, image string) error DeleteEksaDatacenterConfig(ctx context.Context, vsphereDatacenterResourceType string, vsphereDatacenterConfigName string, kubeconfigFile string, namespace string) error DeleteEksaMachineConfig(ctx context.Context, vsphereMachineResourceType string, vsphereMachineConfigName string, kubeconfigFile string, namespace string) error ApplyTolerationsFromTaintsToDaemonSet(ctx context.Context, oldTaints []corev1.Taint, newTaints []corev1.Taint, dsName string, kubeconfigFile string) error }
type Spec ¶ added in v0.7.0
func NewSpec ¶ added in v0.7.0
func NewSpec(clusterSpec *cluster.Spec, machineConfigs map[string]*anywherev1.VSphereMachineConfig, datacenterConfig *anywherev1.VSphereDatacenterConfig) *Spec
type VSphereClientBuilder ¶ added in v0.11.2
type Validator ¶ added in v0.7.0
type Validator struct {
// contains filtered or unexported fields
}
func NewValidator ¶ added in v0.7.0
func NewValidator(govc ProviderGovcClient, netClient networkutils.NetClient, vscb VSphereClientBuilder) *Validator
func (*Validator) ValidateClusterMachineConfigs ¶ added in v0.7.0
func (v *Validator) ValidateClusterMachineConfigs(ctx context.Context, vsphereClusterSpec *Spec) error
TODO: dry out machine configs validations
func (*Validator) ValidateVCenterConfig ¶ added in v0.7.0
func (v *Validator) ValidateVCenterConfig(ctx context.Context, datacenterConfig *anywherev1.VSphereDatacenterConfig) error
type VsphereTemplateBuilder ¶
type VsphereTemplateBuilder struct { WorkerNodeGroupMachineSpecs map[string]anywherev1.VSphereMachineConfigSpec // contains filtered or unexported fields }
func NewVsphereTemplateBuilder ¶
func NewVsphereTemplateBuilder( datacenterSpec *anywherev1.VSphereDatacenterConfigSpec, controlPlaneMachineSpec, etcdMachineSpec *anywherev1.VSphereMachineConfigSpec, workerNodeGroupMachineSpecs map[string]anywherev1.VSphereMachineConfigSpec, now types.NowFunc, fromController bool, ) *VsphereTemplateBuilder
func (*VsphereTemplateBuilder) GenerateCAPISpecControlPlane ¶ added in v0.6.0
func (vs *VsphereTemplateBuilder) GenerateCAPISpecControlPlane( clusterSpec *cluster.Spec, buildOptions ...providers.BuildMapOption, ) (content []byte, err error)
func (*VsphereTemplateBuilder) GenerateCAPISpecWorkers ¶ added in v0.6.0
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
internal
|
|
tags/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
templates/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
Click to show internal directories.
Click to hide internal directories.