diff --git a/internal/pkg/node/constructors.go b/internal/pkg/node/constructors.go index 3c2f68e8..76dc50e1 100644 --- a/internal/pkg/node/constructors.go +++ b/internal/pkg/node/constructors.go @@ -69,10 +69,6 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) { n.Ipxe.SetDefault("default") n.Init.SetDefault("/sbin/init") n.Root.SetDefault("initramfs") - - if n.Kernel == nil { - n.Kernel = &KernelEntry{} - } n.Kernel.Args.SetDefault("quiet crashkernel=no vga=791") fullname := strings.SplitN(nodename, ".", 2) @@ -89,9 +85,6 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) { n.Id.Set(nodename) n.Comment.Set(node.Comment) n.ContainerName.Set(node.ContainerName) - if node.Kernel != nil { - n.Kernel.Args.Set(node.Kernel.Args) - } n.ClusterName.Set(node.ClusterName) n.Ipxe.Set(node.Ipxe) n.Init.Set(node.Init) @@ -112,6 +105,7 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) { n.Discoverable.Set(node.Discoverable) if node.Kernel != nil { + n.Kernel.Args.Set(node.Kernel.Args) if node.Kernel.Override != "" { n.Kernel.Override.Set(node.Kernel.Override) } else if node.Kernel.Version != "" { @@ -237,7 +231,7 @@ func (config *nodeYaml) FindAllNodes() ([]NodeInfo, error) { n.NetDevs[devname].Default.SetAlt(netdev.Default, p) if len(netdev.Tags) != 0 { for keyname, key := range netdev.Tags { - if _, ok := n.Tags[keyname]; !ok { + if _, ok := n.NetDevs[devname].Tags[keyname]; !ok { var keyVar Entry n.NetDevs[devname].Tags[keyname] = &keyVar } diff --git a/internal/pkg/node/methods.go b/internal/pkg/node/methods.go index b9a2ebca..7bb6b862 100644 --- a/internal/pkg/node/methods.go +++ b/internal/pkg/node/methods.go @@ -45,7 +45,7 @@ func FilterByName(set []NodeInfo, searchList []string) []NodeInfo { /* Set value. If argument is 'UNDEF', 'DELETE', - 'UNSET" or '--'. The value is removed. + 'UNSET" or '--' the value is removed. N.B. the '--' might never ever happen as '--' is parsed out by cobra */ diff --git a/internal/pkg/node/modifiers.go b/internal/pkg/node/modifiers.go index 50e55c31..9d98e818 100644 --- a/internal/pkg/node/modifiers.go +++ b/internal/pkg/node/modifiers.go @@ -208,6 +208,10 @@ func (config *nodeYaml) ProfileUpdate(profile NodeInfo) error { config.NodeProfiles[profileID].NetDevs[devname].Type = netdev.Type.GetReal() config.NodeProfiles[profileID].NetDevs[devname].OnBoot = netdev.OnBoot.GetReal() config.NodeProfiles[profileID].NetDevs[devname].Default = netdev.Default.GetReal() + config.NodeProfiles[profileID].NetDevs[devname].Tags = make(map[string]string) + for key, _ := range netdev.Tags { + config.NodeProfiles[profileID].NetDevs[devname].Tags[key] = netdev.Tags[key].GetReal() + } } config.NodeProfiles[profileID].Tags = make(map[string]string)