fixblobs.go 598 B

1234567891011121314151617181920212223242526
  1. package server
  2. import (
  3. "os"
  4. "path/filepath"
  5. "strings"
  6. )
  7. // fixBlobs walks the provided dir and replaces (":") to ("-") in the file
  8. // prefix. (e.g. sha256:1234 -> sha256-1234)
  9. func fixBlobs(dir string) error {
  10. return filepath.Walk(dir, func(path string, info os.FileInfo, err error) error {
  11. if err != nil {
  12. return err
  13. }
  14. baseName := filepath.Base(path)
  15. typ, sha, ok := strings.Cut(baseName, ":")
  16. if ok && typ == "sha256" {
  17. newPath := filepath.Join(filepath.Dir(path), typ+"-"+sha)
  18. if err := os.Rename(path, newPath); err != nil {
  19. return err
  20. }
  21. }
  22. return nil
  23. })
  24. }