34 lines
556 B
Go
34 lines
556 B
Go
package models
|
|
|
|
import (
|
|
"net"
|
|
)
|
|
|
|
type HMNetInfo struct {
|
|
IP net.IP `json:"ip"`
|
|
WebURL string `json:"web_url,omitempty"`
|
|
SSH struct {
|
|
User string `json:"user"`
|
|
PrivKey string `json:"privkey"`
|
|
Port int `json:"port"`
|
|
} `json:"ssh,omitempty"`
|
|
}
|
|
|
|
type HMVM map[string]*HMNetInfo
|
|
type HMLXC map[string]*HMNetInfo
|
|
|
|
type HMMap struct {
|
|
*HMNetInfo
|
|
VM HMVM `json:"vm,omitempty"`
|
|
LXC HMLXC `json:"lxc,omitempty"`
|
|
}
|
|
|
|
func (hm *HMMap) GetSwarmNetInfo() *HMNetInfo {
|
|
data, ok := hm.VM["swarm"]
|
|
if !ok {
|
|
return nil
|
|
}
|
|
|
|
return data
|
|
}
|