2025-04-02 10:20:05 +02:00

37 lines
662 B
Go

package models
import (
"net"
"github.com/rs/zerolog/log"
)
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 {
log.Error().Msg("unable to get swarm net info, check your configuration")
return nil
}
return data
}