diff --git a/internal/pkg/warewulfd/ipxe.go b/internal/pkg/warewulfd/ipxe.go index ab87f665..08ce0ee9 100644 --- a/internal/pkg/warewulfd/ipxe.go +++ b/internal/pkg/warewulfd/ipxe.go @@ -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) + } + } } } diff --git a/internal/pkg/warewulfd/nodedb.go b/internal/pkg/warewulfd/nodedb.go index b2feddab..bea0368f 100644 --- a/internal/pkg/warewulfd/nodedb.go +++ b/internal/pkg/warewulfd/nodedb.go @@ -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 } diff --git a/internal/pkg/warewulfd/util.go b/internal/pkg/warewulfd/util.go index 9cdba891..09e5d638 100644 --- a/internal/pkg/warewulfd/util.go +++ b/internal/pkg/warewulfd/util.go @@ -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)