cachefs/cmd/metadatagen/main.go
2022-04-06 01:08:19 +02:00

49 lines
821 B
Go

// Copyright (C) 2022 Marius Schellenberger
package main
import (
"encoding/hex"
"flag"
"fmt"
"os"
"cachefs/pkg/fs"
"cachefs/pkg/provider/parse"
)
var (
version string
dst string
dstkey string
metadata string
)
func main() {
flag.StringVar(&dst, "dst", "", "url path to cache files (example: file:///mnt/cache)")
flag.StringVar(&dstkey, "dstkey", "", "hex encoded encryption key for dst")
flag.StringVar(&metadata, "data", "", "path to metadata file")
flag.Parse()
var (
dstk []byte
err error
)
if dstkey != "" {
dstk, err = hex.DecodeString(dstkey)
fmt.Println(err)
os.Exit(1)
}
dstfs, err := parse.FS(dst, dstk)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
err = fs.MetadataGenerator(metadata, dstfs)
if err != nil {
fmt.Println(err)
os.Exit(1)
}
os.Exit(0)
}