Introduction of netname functionality for network devices

This commit is contained in:
Gregory Kurtzer
2021-10-23 07:12:57 -07:00
parent 23ddc27b93
commit 1370932cd3
19 changed files with 301 additions and 240 deletions

View File

@@ -90,12 +90,14 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) {
n.NetDevs[devname] = &netdev
}
n.NetDevs[devname].Name.Set(devname)
n.NetDevs[devname].Device.Set(netdev.Device)
n.NetDevs[devname].Ipaddr.Set(netdev.Ipaddr)
n.NetDevs[devname].Netmask.Set(netdev.Netmask)
n.NetDevs[devname].Hwaddr.Set(netdev.Hwaddr)
n.NetDevs[devname].Gateway.Set(netdev.Gateway)
n.NetDevs[devname].Type.Set(netdev.Type)
n.NetDevs[devname].Default.SetB(netdev.Default)
n.NetDevs[devname].OnBoot.SetB(netdev.OnBoot)
}
for keyname, key := range node.Keys {
@@ -142,12 +144,13 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) {
}
wwlog.Printf(wwlog.DEBUG, "Updating profile (%s) netdev: %s\n", p, devname)
n.NetDevs[devname].Device.SetAlt(netdev.Device, p)
n.NetDevs[devname].Ipaddr.SetAlt(netdev.Ipaddr, p)
n.NetDevs[devname].Netmask.SetAlt(netdev.Netmask, p)
n.NetDevs[devname].Hwaddr.SetAlt(netdev.Hwaddr, p)
n.NetDevs[devname].Gateway.SetAlt(netdev.Gateway, p)
n.NetDevs[devname].Type.SetAlt(netdev.Type, p)
n.NetDevs[devname].Default.SetAltB(netdev.Default, p)
n.NetDevs[devname].OnBoot.SetAltB(netdev.OnBoot, p)
}
for keyname, key := range config.NodeProfiles[p].Keys {
@@ -213,12 +216,14 @@ func (config *nodeYaml) FindAllProfiles() ([]NodeInfo, error) {
wwlog.Printf(wwlog.DEBUG, "Updating profile netdev: %s\n", devname)
p.NetDevs[devname].Name.Set(devname)
p.NetDevs[devname].Device.Set(netdev.Device)
p.NetDevs[devname].Ipaddr.Set(netdev.Ipaddr)
p.NetDevs[devname].Netmask.Set(netdev.Netmask)
p.NetDevs[devname].Hwaddr.Set(netdev.Hwaddr)
p.NetDevs[devname].Gateway.Set(netdev.Gateway)
p.NetDevs[devname].Type.Set(netdev.Type)
p.NetDevs[devname].Default.SetB(netdev.Default)
p.NetDevs[devname].OnBoot.SetB(netdev.OnBoot)
}
for keyname, key := range profile.Keys {

View File

@@ -42,8 +42,10 @@ type NodeConf struct {
}
type NetDevs struct {
Name string
Type string `yaml:"type,omitempty"`
Default bool `yaml:"default"`
OnBoot bool `yaml:"onboot"`
Device string `yaml:"device"`
Hwaddr string
Ipaddr string
IpCIDR string
@@ -93,8 +95,10 @@ type NodeInfo struct {
}
type NetDevEntry struct {
Name Entry
Type Entry `yaml:"type,omitempty"`
Default Entry `yaml:"default"`
OnBoot Entry `yaml:"onboot"`
Device Entry `yaml:"device"`
Hwaddr Entry
Ipaddr Entry
IpCIDR Entry

View File

@@ -84,12 +84,13 @@ func (config *nodeYaml) NodeUpdate(node NodeInfo) error {
var newdev NetDevs
config.Nodes[nodeID].NetDevs[devname] = &newdev
config.Nodes[nodeID].NetDevs[devname].Device = netdev.Device.GetReal()
config.Nodes[nodeID].NetDevs[devname].Ipaddr = netdev.Ipaddr.GetReal()
config.Nodes[nodeID].NetDevs[devname].Netmask = netdev.Netmask.GetReal()
config.Nodes[nodeID].NetDevs[devname].Hwaddr = netdev.Hwaddr.GetReal()
config.Nodes[nodeID].NetDevs[devname].Gateway = netdev.Gateway.GetReal()
config.Nodes[nodeID].NetDevs[devname].Type = netdev.Type.GetReal()
config.Nodes[nodeID].NetDevs[devname].Default = netdev.Default.GetRealB()
config.Nodes[nodeID].NetDevs[devname].OnBoot = netdev.OnBoot.GetRealB()
}
for keyname, key := range node.Keys {
@@ -169,12 +170,13 @@ func (config *nodeYaml) ProfileUpdate(profile NodeInfo) error {
var newdev NetDevs
config.NodeProfiles[profileID].NetDevs[devname] = &newdev
config.NodeProfiles[profileID].NetDevs[devname].Device = netdev.Device.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Ipaddr = netdev.Ipaddr.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Netmask = netdev.Netmask.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Hwaddr = netdev.Hwaddr.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Gateway = netdev.Gateway.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Type = netdev.Type.GetReal()
config.NodeProfiles[profileID].NetDevs[devname].Default = netdev.Default.GetRealB()
config.NodeProfiles[profileID].NetDevs[devname].OnBoot = netdev.OnBoot.GetRealB()
}
for keyname, key := range profile.Keys {