new pve api

This commit is contained in:
ston1th 2020-06-05 00:22:04 +02:00
commit 9a58ab40b0
6 changed files with 17 additions and 17 deletions

View file

@ -111,8 +111,7 @@ func (c *cloud) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []strin
}
func (c *cloud) HasClusterID() bool {
// TODO set to true
return false
return true
}
func init() {

View file

@ -48,6 +48,10 @@ func (i *instances) NodeAddresses(ctx context.Context, nodeName types.NodeName)
if err != nil {
return nil, err
}
server, err = getServerByProviderID(ctx, i.client, server.K8sID())
if err != nil {
return nil, err
}
return i.nodeAddresses(ctx, server), nil
}
@ -56,7 +60,7 @@ func (i *instances) InstanceID(ctx context.Context, nodeName types.NodeName) (st
if err != nil {
return "", err
}
return strings.TrimPrefix(server.InstanceID(), scheme), nil
return strings.TrimPrefix(server.K8sID(), scheme), nil
}
func (i *instances) InstanceType(ctx context.Context, nodeName types.NodeName) (string, error) {
@ -95,19 +99,21 @@ func (i *instances) CurrentNodeName(ctx context.Context, hostname string) (types
}
func (i *instances) InstanceExistsByProviderID(ctx context.Context, providerID string) (exists bool, err error) {
server, err := i.client.Server.GetByURL(ctx, providerID)
if err != nil {
server, err := getServerByProviderID(ctx, i.client, providerID)
if err != nil && err != cloudprovider.InstanceNotFound {
return
}
err = nil
exists = server != nil
return
}
func (i *instances) InstanceShutdownByProviderID(ctx context.Context, providerID string) (isOff bool, err error) {
server, err := i.client.Server.GetByURL(ctx, providerID)
if err != nil {
server, err := getServerByProviderID(ctx, i.client, providerID)
if err != nil && err != cloudprovider.InstanceNotFound {
return
}
err = nil
isOff = server != nil && server.Status == pve.ServerStatusStopped
return
}

View file

@ -20,7 +20,7 @@ import (
)
func getServerByName(ctx context.Context, c *pve.Client, name string) (server *pve.Server, err error) {
server, err = c.Node.FindServerByName(ctx, name)
server, err = c.Pool.FindServerByName(ctx, "", name)
if err == pve.ErrServerNotFound {
return nil, cloudprovider.InstanceNotFound
}
@ -28,7 +28,7 @@ func getServerByName(ctx context.Context, c *pve.Client, name string) (server *p
}
func getServerByProviderID(ctx context.Context, c *pve.Client, providerID string) (server *pve.Server, err error) {
server, err = c.Node.FindServerByURL(ctx, providerID)
server, err = c.Server.GetByURL(ctx, providerID)
if err == pve.ErrServerNotFound {
return nil, cloudprovider.InstanceNotFound
}