Bugfix: cloning a site overlay when parent dir does not exist

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
Jonathon Anderson
2025-07-27 01:38:33 -06:00
parent 749e79b7ec
commit e149a332e6
4 changed files with 9 additions and 8 deletions

View File

@@ -68,8 +68,8 @@ func (overlay Overlay) CloneSiteOverlay() (siteOverlay Overlay, err error) {
if siteOverlay.Exists() {
return siteOverlay, fmt.Errorf("site overlay already exists: %s", siteOverlay.Name())
}
if !util.IsDir(filepath.Dir(overlay.Path())) {
if err := os.MkdirAll(filepath.Dir(overlay.Path()), 0o755); err != nil {
if !util.IsDir(filepath.Dir(siteOverlay.Path())) {
if err := os.MkdirAll(filepath.Dir(siteOverlay.Path()), 0o755); err != nil {
return siteOverlay, err
}
}

View File

@@ -330,7 +330,7 @@ func FindOverlays() (overlayList []string) {
files = append(files, distfiles...)
}
if sitefiles, err := os.ReadDir(controller.Paths.SiteOverlaydir()); err != nil {
wwlog.Warn("error reading overalys from %s: %s", controller.Paths.SiteOverlaydir(), err)
wwlog.Warn("error reading overlays from %s: %s", controller.Paths.SiteOverlaydir(), err)
} else {
files = append(files, sitefiles...)
}