Minor fixups to daemon process and reloading the database on configuring a new node
This commit is contained in:
@@ -27,6 +27,7 @@ type iPxeTemplate struct {
|
||||
}
|
||||
|
||||
func IpxeSend(w http.ResponseWriter, req *http.Request) {
|
||||
|
||||
url := strings.Split(req.URL.Path, "/")
|
||||
var unconfiguredNode bool
|
||||
|
||||
@@ -45,6 +46,8 @@ func IpxeSend(w http.ResponseWriter, req *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
log.Printf("IPXEREQ: %s\n", req.URL.Path)
|
||||
|
||||
nodeobj, err := GetNode(hwaddr)
|
||||
|
||||
if err != nil {
|
||||
@@ -58,7 +61,7 @@ func IpxeSend(w http.ResponseWriter, req *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
wwlog.Printf(wwlog.VERBOSE, "Node was not found, looking for discoverable nodes...\n")
|
||||
wwlog.Printf(wwlog.INFO, "Node was not found, looking for discoverable nodes...\n")
|
||||
|
||||
n, netdev, err := nodeDB.FindDiscoverableNode()
|
||||
if err != nil {
|
||||
@@ -85,6 +88,14 @@ func IpxeSend(w http.ResponseWriter, req *http.Request) {
|
||||
_ = overlay.BuildSystemOverlay([]node.NodeInfo{n})
|
||||
wwlog.Printf(wwlog.INFO, "Building Runtime Overlay:\n")
|
||||
_ = overlay.BuildRuntimeOverlay([]node.NodeInfo{n})
|
||||
|
||||
wwlog.Printf(wwlog.INFO, "Added node %s\n", nodeobj.Id.Get())
|
||||
|
||||
err := LoadNodeDB()
|
||||
if err != nil {
|
||||
wwlog.Printf(wwlog.WARN, "Could not reload database: %s\n", err)
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,7 +53,6 @@ func GetNode(val string) (node.NodeInfo, error) {
|
||||
defer db.lock.RUnlock()
|
||||
|
||||
if _, ok := db.NodeInfo[val]; ok {
|
||||
wwlog.Printf(wwlog.DEBUG, "Found node:\n%+v\n", db.NodeInfo[val])
|
||||
|
||||
return db.NodeInfo[val], nil
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ func getSanity(req *http.Request) (node.NodeInfo, error) {
|
||||
nodeobj, err := GetNode(hwaddr)
|
||||
if err != nil {
|
||||
var ret node.NodeInfo
|
||||
return ret, errors.New("Could not find node by HW address")
|
||||
return ret, errors.New("Could not find node by HW address: " + req.URL.Path)
|
||||
}
|
||||
|
||||
log.Printf("REQ: %15s: %s\n", nodeobj.Id.Get(), req.URL.Path)
|
||||
|
||||
Reference in New Issue
Block a user