Bug of modifying IP to be empty
This commit is contained in:
parent
51419f13ef
commit
410dad4477
|
@ -56,7 +56,7 @@ type ServersData struct {
|
|||
Id string `json:"id"`
|
||||
Image Image `json:"image"`
|
||||
Key_name string `json:"key_name"`
|
||||
Links Links1 `json:"links"`
|
||||
Links []Links `json:"links"`
|
||||
Locked bool `json:"locked"`
|
||||
Locked_reason string `json:"locked_reason"`
|
||||
Metadata Metadata `json:"metadata"`
|
||||
|
@ -82,16 +82,21 @@ type Address struct {
|
|||
}
|
||||
|
||||
type Flavor struct {
|
||||
Id string `json:"id"`
|
||||
Links []Links1 `json:"links"`
|
||||
Id string `json:"id"`
|
||||
Links []Links `json:"links"`
|
||||
}
|
||||
|
||||
type Image struct {
|
||||
Id string `json:"id"`
|
||||
Links []Links1 `json:"links"`
|
||||
Id string `json:"id"`
|
||||
Links []Link `json:"links"`
|
||||
}
|
||||
|
||||
type Links1 struct {
|
||||
type Links struct {
|
||||
Href string `json:"href"`
|
||||
Rel string `json:"rel"`
|
||||
}
|
||||
|
||||
type Link struct {
|
||||
Href string `json:"href"`
|
||||
Rel string `json:"rel"`
|
||||
}
|
||||
|
@ -126,6 +131,7 @@ type ServersDetailed struct {
|
|||
Flavor string `json:"Flavor"`
|
||||
Id string `json:"Id"`
|
||||
Name string `json:"Name"`
|
||||
Key_name string `json:"Key_name"`
|
||||
// 其他字段...
|
||||
}
|
||||
|
||||
|
@ -134,44 +140,72 @@ func (l *ListServersDetailedLogic) ListServersDetailed(in *openstack.ListServers
|
|||
var response ServersDetailedResp
|
||||
var resp openstack.ListServersDetailedResp
|
||||
platform, err := common.GetOpenstackConfWithPlatform(in.Platform)
|
||||
fmt.Println("集群名", platform)
|
||||
openstackUrl := platform.OpenstackComputeUrl
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
token := common.GetToken(in.Platform)
|
||||
statusCode, body, err := httputils.HttpClientWithBodyAndCode(httputils.GET, openstackUrl+"/servers/detail", nil, token)
|
||||
fmt.Println("返回openstack结果", body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if statusCode == 200 {
|
||||
err := json.Unmarshal(body, &response)
|
||||
fmt.Println("返回结果", response)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
fmt.Println("错误结果", err)
|
||||
}
|
||||
fmt.Println("错误结果1", "aaaaaaaaaaaa")
|
||||
var newList []interface{}
|
||||
fmt.Println("错误结果2", "bbbbbbbbbb")
|
||||
for _, server := range response.Servers {
|
||||
for _, network := range server.Addresses {
|
||||
for _, addr := range network {
|
||||
ip := addr.Addr
|
||||
fmt.Println("addr:", addr.Addr)
|
||||
// 假设我们想要提取任务状态(task_state)和状态(status)
|
||||
newList = append(newList, map[string]interface{}{
|
||||
"OSTaskState": server.OSTaskState,
|
||||
"Status": server.Status,
|
||||
"VmState": server.VmState,
|
||||
"OS_EXT_SRV_ATTR_Instance_Name": server.InstanceName,
|
||||
"Created": server.Created,
|
||||
"Updated": server.Updated,
|
||||
"HostId": server.HostId,
|
||||
"Ip": ip,
|
||||
"Image": server.Image.Id,
|
||||
"Flavor": server.Flavor.Id,
|
||||
"Id": server.Id,
|
||||
"Name": server.Name,
|
||||
})
|
||||
fmt.Println("错误结果3", response.Servers)
|
||||
if len(server.Addresses) > 0 {
|
||||
for _, network := range server.Addresses {
|
||||
fmt.Println("错误结果4", server.Addresses)
|
||||
for _, addr := range network {
|
||||
fmt.Println("错误结果5", addr.Addr)
|
||||
ip := addr.Addr
|
||||
fmt.Println("addr:", addr.Addr)
|
||||
// 假设我们想要提取任务状态(task_state)和状态(status)
|
||||
newList = append(newList, map[string]interface{}{
|
||||
"OSTaskState": server.OSTaskState,
|
||||
"Status": server.Status,
|
||||
"VmState": server.VmState,
|
||||
"OS_EXT_SRV_ATTR_Instance_Name": server.InstanceName,
|
||||
"Created": server.Created,
|
||||
"Updated": server.Updated,
|
||||
"HostId": server.HostId,
|
||||
"Ip": ip,
|
||||
"Image": server.Image.Id,
|
||||
"Flavor": server.Flavor.Id,
|
||||
"Id": server.Id,
|
||||
"Name": server.Name,
|
||||
"Key_name": server.Key_name,
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
// 假设我们想要提取任务状态(task_state)和状态(status)
|
||||
newList = append(newList, map[string]interface{}{
|
||||
"OSTaskState": server.OSTaskState,
|
||||
"Status": server.Status,
|
||||
"VmState": server.VmState,
|
||||
"OS_EXT_SRV_ATTR_Instance_Name": server.InstanceName,
|
||||
"Created": server.Created,
|
||||
"Updated": server.Updated,
|
||||
"HostId": server.HostId,
|
||||
//"Ip": ip,
|
||||
"Image": server.Image.Id,
|
||||
"Flavor": server.Flavor.Id,
|
||||
"Id": server.Id,
|
||||
"Name": server.Name,
|
||||
"Key_name": server.Key_name,
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
jsonData, err := json.Marshal(newList)
|
||||
var serversDetailed []ServersDetailed
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -126,6 +126,7 @@ message ListServersDetailedResp {
|
|||
string Flavor =10;
|
||||
string Id =11;
|
||||
string Name =12;
|
||||
string Key_name =13;
|
||||
}
|
||||
|
||||
repeated ServersDetailed servers = 1; // @gotags: copier:"ServersDetailed"
|
||||
|
|
Loading…
Reference in New Issue