Documentation
¶
Index ¶
- Constants
- type OVirtApiConfig
- type OVirtCloud
- func (v *OVirtCloud) AddSSHKeyToAllInstances(ctx context.Context, user string, keyData []byte) error
- func (v *OVirtCloud) Clusters() (cloudprovider.Clusters, bool)
- func (v *OVirtCloud) CurrentNodeName(ctx context.Context, hostname string) (types.NodeName, error)
- func (v *OVirtCloud) HasClusterID() bool
- func (v *OVirtCloud) Initialize(clientBuilder cloudprovider.ControllerClientBuilder, stop <-chan struct{})
- func (v *OVirtCloud) InstanceExistsByProviderID(ctx context.Context, providerID string) (bool, error)
- func (v *OVirtCloud) InstanceID(ctx context.Context, nodeName types.NodeName) (string, error)
- func (v *OVirtCloud) InstanceShutdownByProviderID(ctx context.Context, providerID string) (bool, error)
- func (v *OVirtCloud) InstanceType(ctx context.Context, name types.NodeName) (string, error)
- func (v *OVirtCloud) InstanceTypeByProviderID(ctx context.Context, providerID string) (string, error)
- func (v *OVirtCloud) Instances() (cloudprovider.Instances, bool)
- func (v *OVirtCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
- func (v *OVirtCloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v1.NodeAddress, error)
- func (v *OVirtCloud) NodeAddressesByProviderID(ctx context.Context, providerID string) ([]v1.NodeAddress, error)
- func (v *OVirtCloud) ProviderName() string
- func (v *OVirtCloud) Routes() (cloudprovider.Routes, bool)
- func (v *OVirtCloud) Zones() (cloudprovider.Zones, bool)
- type OVirtInstance
- type OVirtInstanceMap
- type XmlVmAddress
- type XmlVmInfo
- type XmlVmsList
Constants ¶
const ProviderName = "ovirt"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OVirtApiConfig ¶
type OVirtApiConfig struct {
Connection struct {
ApiEntry string `gcfg:"uri"`
Username string `gcfg:"username"`
Password string `gcfg:"password"`
}
Filters struct {
VmsQuery string `gcfg:"vms"`
}
}
type OVirtCloud ¶
type OVirtCloud struct {
VmsRequest *url.URL
HostsRequest *url.URL
}
func (*OVirtCloud) AddSSHKeyToAllInstances ¶
func (v *OVirtCloud) AddSSHKeyToAllInstances(ctx context.Context, user string, keyData []byte) error
func (*OVirtCloud) CurrentNodeName ¶
func (v *OVirtCloud) CurrentNodeName(ctx context.Context, hostname string) (types.NodeName, error)
Implementation of Instances.CurrentNodeName
func (*OVirtCloud) HasClusterID ¶ added in v1.8.0
func (v *OVirtCloud) HasClusterID() bool
HasClusterID returns true if the cluster has a clusterID
func (*OVirtCloud) Initialize ¶ added in v1.7.0
func (v *OVirtCloud) Initialize(clientBuilder cloudprovider.ControllerClientBuilder, stop <-chan struct{})
Initialize passes a Kubernetes clientBuilder interface to the cloud provider
func (*OVirtCloud) InstanceExistsByProviderID ¶ added in v1.8.0
func (v *OVirtCloud) InstanceExistsByProviderID(ctx context.Context, providerID string) (bool, error)
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 (*OVirtCloud) InstanceID ¶
func (v *OVirtCloud) InstanceID(ctx context.Context, nodeName types.NodeName) (string, error)
InstanceID returns the cloud provider ID of the node with the specified NodeName.
func (*OVirtCloud) InstanceShutdownByProviderID ¶ added in v1.11.0
func (v *OVirtCloud) InstanceShutdownByProviderID(ctx context.Context, providerID string) (bool, error)
InstanceShutdownByProviderID returns true if the instance is in safe state to detach volumes
func (*OVirtCloud) InstanceType ¶ added in v1.2.0
func (v *OVirtCloud) InstanceType(ctx context.Context, name types.NodeName) (string, error)
InstanceType returns the type of the specified instance.
func (*OVirtCloud) InstanceTypeByProviderID ¶ added in v1.7.0
func (v *OVirtCloud) InstanceTypeByProviderID(ctx context.Context, providerID string) (string, error)
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 (*OVirtCloud) Instances ¶
func (v *OVirtCloud) Instances() (cloudprovider.Instances, bool)
Instances returns an implementation of Instances for oVirt cloud
func (*OVirtCloud) LoadBalancer ¶ added in v1.2.0
func (v *OVirtCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
LoadBalancer returns an implementation of LoadBalancer for oVirt cloud
func (*OVirtCloud) NodeAddresses ¶
func (v *OVirtCloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v1.NodeAddress, error)
NodeAddresses returns the NodeAddresses of the instance with the specified nodeName.
func (*OVirtCloud) NodeAddressesByProviderID ¶ added in v1.7.0
func (v *OVirtCloud) 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 (*OVirtCloud) ProviderName ¶
func (v *OVirtCloud) ProviderName() string
ProviderName returns the cloud provider ID.
type OVirtInstance ¶
type OVirtInstance struct {
UUID string
Name string
IPAddress string
}
type OVirtInstanceMap ¶
type OVirtInstanceMap map[string]OVirtInstance
func (*OVirtInstanceMap) ListSortedNames ¶
func (m *OVirtInstanceMap) ListSortedNames() []string
type XmlVmAddress ¶
type XmlVmAddress struct {
Address string `xml:"address,attr"`
}
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"`
}
type XmlVmsList ¶
type XmlVmsList struct {
XMLName xml.Name `xml:"vms"`
Vm []XmlVmInfo `xml:"vm"`
}