grim/hgkeeper

Use Go 1.22 and update dependencies
default tip
2 months ago, aklitzing
f33f223bc8fe
Use Go 1.22 and update dependencies

Reviewed at https://reviews.imfreedom.org/r/2949/
package access
import (
"path/filepath"
"sync"
"github.com/casbin/casbin/v2"
"go.uber.org/zap"
)
var (
enforcer *casbin.Enforcer
enforcerLock sync.Mutex
)
func refreshEnforcer() error {
enforcerLock.Lock()
defer enforcerLock.Unlock()
modelFile := filepath.Join(AdminRepoPath(), modelFilename)
policyFile := filepath.Join(AdminRepoPath(), policyFilename)
zap.S().Debugf("reading model from %q", modelFile)
zap.S().Debugf("reading policy from %q", policyFile)
e, err := casbin.NewEnforcer(modelFile, policyFile)
if err != nil {
zap.S().Errorf("failed to create new enforcer: %v", err)
return err
}
enforcer = e
return nil
}