Files
wehub-resource-sync 75f3dd141c
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
CodeQL / Analyze (javascript-typescript) (push) Has been cancelled
CI and Release / lint-frontend (push) Has been cancelled
CI and Release / dockerfile-scan (push) Has been cancelled
CI and Release / test-frontend (push) Has been cancelled
CI and Release / lint-verification-agent (push) Has been cancelled
CI and Release / test-verification-agent (push) Has been cancelled
CI and Release / e2e-verification-agent (push) Has been cancelled
CI and Release / test-backend (push) Has been cancelled
CI and Release / build-dev-image (push) Has been cancelled
CI and Release / push-dev-image (push) Has been cancelled
CI and Release / build-image (push) Has been cancelled
CI and Release / build-verification-image (push) Has been cancelled
CI and Release / determine-version (push) Has been cancelled
CI and Release / push-image (push) Has been cancelled
CI and Release / push-verification-image (12) (push) Has been cancelled
CI and Release / lint-backend (push) Has been cancelled
CI and Release / push-verification-image (17) (push) Has been cancelled
CI and Release / push-verification-image (18) (push) Has been cancelled
CI and Release / release (push) Has been cancelled
CI and Release / publish-helm-chart (push) Has been cancelled
CI and Release / push-verification-image (13) (push) Has been cancelled
CI and Release / push-verification-image (14) (push) Has been cancelled
CI and Release / push-verification-image (15) (push) Has been cancelled
CI and Release / push-verification-image (16) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:11:07 +08:00

29 lines
623 B
Go

package disk
import (
"fmt"
"path/filepath"
"github.com/shirou/gopsutil/v4/disk"
"databasus-backend/internal/config"
)
type DiskService struct{}
func (s *DiskService) GetDiskUsage() (*DiskUsage, error) {
cfg := config.GetEnv()
path := filepath.Dir(cfg.DataFolder) // Gets /databasus-data from /databasus-data/backups
diskUsage, err := disk.Usage(path)
if err != nil {
return nil, fmt.Errorf("failed to get disk usage for path %s: %w", path, err)
}
return &DiskUsage{
TotalSpaceBytes: int64(diskUsage.Total),
UsedSpaceBytes: int64(diskUsage.Used),
FreeSpaceBytes: int64(diskUsage.Free),
}, nil
}