feat: add NFS volume type

This commit is contained in:
Nicolas Meienberger
2025-08-20 21:15:30 +02:00
parent d13763995e
commit 83b4296cfc
12 changed files with 310 additions and 31 deletions

View File

@@ -2,6 +2,7 @@ package volumes
import (
"context"
"github.com/go-playground/validator/v10"
"ironmount/internal/db"
"github.com/rs/zerolog/log"
@@ -27,9 +28,18 @@ func (q *VolumeQueries) QueryVolumeByName(n string) (*db.Volume, error) {
return volume, nil
}
func (q *VolumeQueries) InsertVolume(name, path string) error {
func (q *VolumeQueries) InsertVolume(name string, path string, volType VolumeBackendType, config string) error {
ctx := context.Background()
err := gorm.G[db.Volume](db.DB).Create(ctx, &db.Volume{Name: name, Path: path})
validate := validator.New(validator.WithRequiredStructEnabled())
data := &db.Volume{}
if err := validate.Struct(data); err != nil {
log.Error().Err(err).Str("name", name).Msg("Validation error while inserting volume")
return err
}
err := gorm.G[db.Volume](db.DB).Create(ctx, &db.Volume{})
if err != nil {
return err