github.com/cloud-foundations/dominator@v0.0.0-20221004181915-6e4fee580046/cmd/objecttool/checkObject.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  
     7  	"github.com/Cloud-Foundations/Dominator/lib/hash"
     8  	"github.com/Cloud-Foundations/Dominator/lib/log"
     9  	"github.com/Cloud-Foundations/Dominator/lib/objectcache"
    10  )
    11  
    12  func checkObjectSubcommand(args []string, logger log.DebugLogger) error {
    13  	hashes := make([]hash.Hash, 1)
    14  	var err error
    15  	hashes[0], err = objectcache.FilenameToHash(args[0])
    16  	if err != nil {
    17  		return fmt.Errorf("Error parsing hash: %s", err)
    18  	}
    19  	objectSizes, err := getObjectServer().CheckObjects(hashes)
    20  	if err != nil {
    21  		return fmt.Errorf("Error checking object: %s", err)
    22  	}
    23  	if objectSizes[0] > 0 {
    24  		return nil
    25  	} else {
    26  		os.Exit(1)
    27  		panic("impossible")
    28  	}
    29  }