tstor/src/export/nfs/handler.go
2024-01-07 20:09:56 +03:00

24 lines
656 B
Go

package nfs
import (
"git.kmsign.ru/royalcat/tstor/src/host/vfs"
"git.kmsign.ru/royalcat/tstor/src/log"
zlog "github.com/rs/zerolog/log"
nfs "github.com/willscott/go-nfs"
nfshelper "github.com/willscott/go-nfs/helpers"
)
func NewNFSv3Handler(fs vfs.Filesystem) (nfs.Handler, error) {
nfslog := zlog.Logger.With().Str("component", "nfs").Logger()
nfs.SetLogger(log.NewNFSLog(nfslog))
nfs.Log.SetLevel(nfs.InfoLevel)
bfs := &billyFsWrapper{fs: fs, log: nfslog}
handler := nfshelper.NewNullAuthHandler(bfs)
cacheHelper := nfshelper.NewCachingHandler(handler, 1024*16)
// cacheHelper := NewCachingHandler(handler)
return cacheHelper, nil
}