Add a new OpenAPI v3 REST API to warewulfd at /api

Co-authored-by: jason yang <jasonyangshadow@gmail.com>

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
Jonathon Anderson
2025-03-02 13:32:41 -07:00
parent bf0fc8bb27
commit 4005afac4c
42 changed files with 2730 additions and 345 deletions

View File

@@ -31,3 +31,7 @@ func ImageParentDir() string {
func ImageFile(name string) string {
return path.Join(ImageParentDir(), name+".img")
}
func CompressedImageFile(name string) string {
return ImageFile(name) + ".gz"
}

View File

@@ -3,6 +3,7 @@ package image
import (
"os"
"path/filepath"
"time"
"github.com/pkg/errors"
@@ -114,3 +115,27 @@ func DeleteImage(name string) error {
func IsWriteAble(name string) bool {
return !util.IsFile(filepath.Join(SourceDir(name), "readonly"))
}
func ImageSize(name string) int {
if img, err := os.Stat(ImageFile(name)); err == nil {
return int(img.Size())
} else {
return 0
}
}
func ImageModTime(name string) time.Time {
if img, err := os.Stat(ImageFile(name)); err == nil {
return img.ModTime()
} else {
return time.Time{}
}
}
func CompressedImageSize(name string) int {
if img, err := os.Stat(CompressedImageFile(name)); err == nil {
return int(img.Size())
} else {
return 0
}
}