Documentation ¶
Index ¶
- Constants
- type APIConfig
- type Cloud
- func (v *Cloud) AddSSHKeyToAllInstances(ctx context.Context, user string, keyData []byte) error
- func (v *Cloud) Clusters() (cloudprovider.Clusters, bool)
- func (v *Cloud) CurrentNodeName(ctx context.Context, hostname string) (types.NodeName, error)
- func (v *Cloud) HasClusterID() bool
- func (v *Cloud) Initialize(clientBuilder cloudprovider.ControllerClientBuilder, stop <-chan struct{})
- func (v *Cloud) InstanceExistsByProviderID(ctx context.Context, providerID string) (bool, error)
- func (v *Cloud) InstanceID(ctx context.Context, nodeName types.NodeName) (string, error)
- func (v *Cloud) InstanceShutdownByProviderID(ctx context.Context, providerID string) (bool, error)
- func (v *Cloud) InstanceType(ctx context.Context, name types.NodeName) (string, error)
- func (v *Cloud) InstanceTypeByProviderID(ctx context.Context, providerID string) (string, error)
- func (v *Cloud) Instances() (cloudprovider.Instances, bool)
- func (v *Cloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
- func (v *Cloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v1.NodeAddress, error)
- func (v *Cloud) NodeAddressesByProviderID(ctx context.Context, providerID string) ([]v1.NodeAddress, error)
- func (v *Cloud) ProviderName() string
- func (v *Cloud) Routes() (cloudprovider.Routes, bool)
- func (v *Cloud) Zones() (cloudprovider.Zones, bool)
- type Instance
- type InstanceMap
- type XMLVMAddress
- type XMLVMInfo
- type XMLVmsList
Constants ¶
const ProviderName = "ovirt"
ProviderName is the name of this cloud provider.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIConfig ¶
type APIConfig struct { Connection struct { APIEntry string `gcfg:"uri"` Username string `gcfg:"username"` Password string `gcfg:"password"` } Filters struct { VmsQuery string `gcfg:"vms"` } }
APIConfig wraps the api settings for the Ovirt.
type Cloud ¶
Cloud is an implementation of the cloud provider interface for Ovirt.
func (*Cloud) AddSSHKeyToAllInstances ¶
AddSSHKeyToAllInstances is currently not implemented.
func (*Cloud) Clusters ¶
func (v *Cloud) Clusters() (cloudprovider.Clusters, bool)
Clusters returns the list of clusters.
func (*Cloud) CurrentNodeName ¶
CurrentNodeName is implementation of Instances.CurrentNodeName.
func (*Cloud) HasClusterID ¶
HasClusterID returns true if the cluster has a clusterID
func (*Cloud) Initialize ¶
func (v *Cloud) Initialize(clientBuilder cloudprovider.ControllerClientBuilder, stop <-chan struct{})
Initialize passes a Kubernetes clientBuilder interface to the cloud provider
func (*Cloud) InstanceExistsByProviderID ¶
InstanceExistsByProviderID returns true if the instance with the given provider id still exists and is running. If false is returned with no error, the instance will be immediately deleted by the cloud controller manager.
func (*Cloud) InstanceID ¶
InstanceID returns the cloud provider ID of the node with the specified NodeName.
func (*Cloud) InstanceShutdownByProviderID ¶
InstanceShutdownByProviderID returns true if the instance is in safe state to detach volumes
func (*Cloud) InstanceType ¶
InstanceType returns the type of the specified instance.
func (*Cloud) InstanceTypeByProviderID ¶
InstanceTypeByProviderID returns the cloudprovider instance type of the node with the specified unique providerID This method will not be called from the node that is requesting this ID. i.e. metadata service and other local methods cannot be used here
func (*Cloud) Instances ¶
func (v *Cloud) Instances() (cloudprovider.Instances, bool)
Instances returns an implementation of Instances for oVirt cloud
func (*Cloud) LoadBalancer ¶
func (v *Cloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
LoadBalancer returns an implementation of LoadBalancer for oVirt cloud
func (*Cloud) NodeAddresses ¶
func (v *Cloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v1.NodeAddress, error)
NodeAddresses returns the NodeAddresses of the instance with the specified nodeName.
func (*Cloud) NodeAddressesByProviderID ¶
func (v *Cloud) NodeAddressesByProviderID(ctx context.Context, providerID string) ([]v1.NodeAddress, error)
NodeAddressesByProviderID returns the node addresses of an instances with the specified unique providerID This method will not be called from the node that is requesting this ID. i.e. metadata service and other local methods cannot be used here
func (*Cloud) ProviderName ¶
ProviderName returns the cloud provider ID.
type InstanceMap ¶
InstanceMap provides the map of Ovirt instances.
func (*InstanceMap) ListSortedNames ¶
func (m *InstanceMap) ListSortedNames() []string
ListSortedNames returns the list of sorted Ovirt instances name.
type XMLVMAddress ¶
type XMLVMAddress struct {
Address string `xml:"address,attr"`
}
XMLVMAddress is an implementation for the Ovirt instance IP address in xml.
type XMLVMInfo ¶
type XMLVMInfo struct { UUID string `xml:"id,attr"` Name string `xml:"name"` Hostname string `xml:"guest_info>fqdn"` Addresses []XMLVMAddress `xml:"guest_info>ips>ip"` State string `xml:"status>state"` }
XMLVMInfo is an implementation for the Ovirt instance details in xml.
type XMLVmsList ¶
XMLVmsList is an implementation to provide the list of Ovirt instances.