fixed pool search

This commit is contained in:
ston1th 2020-06-04 22:40:38 +02:00
commit 4c7e511a72
3 changed files with 26 additions and 5 deletions

28
pool.go
View file

@ -7,6 +7,7 @@ import (
"errors"
"fmt"
"net/http"
"strconv"
)
var (
@ -75,7 +76,7 @@ func (c *PoolClient) Delete(ctx context.Context, name string) (err error) {
}
type pools struct {
poolid string `json:"poolid"`
PoolID string `json:"poolid"`
}
func (c *PoolClient) ListPools(ctx context.Context) (list []string, err error) {
@ -89,13 +90,32 @@ func (c *PoolClient) ListPools(ctx context.Context) (list []string, err error) {
return
}
for _, p := range ps {
list = append(list, p.poolid)
list = append(list, p.PoolID)
}
return
}
type poolMember struct {
ID int `json:"vmid"`
Name string `json:"name"`
Node string `json:"node"`
}
type poolMembers []poolMember
func (pms poolMembers) ServerList() (sl ServerList) {
for _, pm := range pms {
sl = append(sl, &Server{
ID: strconv.Itoa(pm.ID),
Name: pm.Name,
Node: pm.Node,
})
}
return
}
type pool struct {
members ServerList `json:"members"`
Members poolMembers `json:"members"`
}
func (c *PoolClient) ListMembers(ctx context.Context, name string) (sl ServerList, err error) {
@ -109,7 +129,7 @@ func (c *PoolClient) ListMembers(ctx context.Context, name string) (sl ServerLis
return
}
_, err = c.client.Do(req, &p)
sl = p.members
sl = p.Members.ServerList()
return
}