More updates including #WW... declarations in overlay configs
This commit is contained in:
@@ -8,7 +8,7 @@ import (
|
||||
"github.com/hpcng/warewulf/internal/pkg/errors"
|
||||
)
|
||||
|
||||
const ConfigFile = "/etc/warewulf/nodes.yaml"
|
||||
const ConfigFile = "/etc/warewulf/nodes.conf"
|
||||
|
||||
func init() {
|
||||
//TODO: Check to make sure nodes.yaml is found
|
||||
@@ -22,21 +22,21 @@ type nodeYaml struct {
|
||||
type nodeGroup struct {
|
||||
Comment string
|
||||
Vnfs string
|
||||
SystemOverlay string `yaml:"system overlay""`
|
||||
RuntimeOverlay string `yaml:"runtime overlay""`
|
||||
DomainSuffix string `yaml:"domain suffix"`
|
||||
KernelVersion string `yaml:"kernel version"`
|
||||
SystemOverlay string `yaml:"system overlay""`
|
||||
RuntimeOverlay string `yaml:"runtime overlay""`
|
||||
DomainSuffix string `yaml:"domain suffix"`
|
||||
KernelVersion string `yaml:"kernel version"`
|
||||
Nodes map[string]nodeEntry
|
||||
}
|
||||
|
||||
type nodeEntry struct {
|
||||
Hostname string
|
||||
Vnfs string
|
||||
SystemOverlay string `yaml:"system overlay"`
|
||||
RuntimeOverlay string `yaml:"runtime overlay"`
|
||||
DomainSuffix string `yaml:"domain suffix"`
|
||||
KernelVersion string `yaml:"kernel version"`
|
||||
IpmiIpaddr string `yaml:"ipmi ipaddr"`
|
||||
SystemOverlay string `yaml:"system overlay"`
|
||||
RuntimeOverlay string `yaml:"runtime overlay"`
|
||||
DomainSuffix string `yaml:"domain suffix"`
|
||||
KernelVersion string `yaml:"kernel version"`
|
||||
IpmiIpaddr string `yaml:"ipmi ipaddr"`
|
||||
NetDevs map[string]netDevs
|
||||
}
|
||||
|
||||
|
||||
35
internal/pkg/config/config.go
Normal file
35
internal/pkg/config/config.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"gopkg.in/yaml.v2"
|
||||
"github.com/kelseyhightower/envconfig"
|
||||
"io/ioutil"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
Port int `yaml:"port", envconfig:"WAREWULFD_PORT"`
|
||||
Ipaddr string `yaml:"ipaddr", envconfig:"WAREWULFD_IPADDR"`
|
||||
Secure bool `yaml:"secure port"`
|
||||
Debug bool `yaml:"debug"`
|
||||
}
|
||||
|
||||
func New() (Config, error) {
|
||||
var c Config
|
||||
|
||||
fd, err := ioutil.ReadFile("/etc/warewulf/warewulf.conf")
|
||||
if err != nil {
|
||||
return c, err
|
||||
}
|
||||
|
||||
err = yaml.Unmarshal(fd, &c)
|
||||
if err != nil {
|
||||
return c, err
|
||||
}
|
||||
|
||||
err = envconfig.Process("", &c)
|
||||
if err != nil {
|
||||
return c, err
|
||||
}
|
||||
|
||||
return c, nil
|
||||
}
|
||||
Reference in New Issue
Block a user