grim/hgkeeper
Clone
Summary
Browse
Changes
Graph
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
}