[#680] Move policy engine converter to s3-gw

Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
This commit is contained in:
Denis Kirillov 2025-04-04 18:04:58 +03:00 committed by Alexey Vanin
parent e788bb6ec9
commit 0ba6989197
21 changed files with 4325 additions and 50 deletions

View file

@ -26,6 +26,7 @@ import (
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/resolver"
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/creds/accessbox"
intmfa "git.frostfs.info/TrueCloudLab/frostfs-s3-gw/internal/frostfs/mfa"
policyengine "git.frostfs.info/TrueCloudLab/frostfs-s3-gw/pkg/policy-engine"
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/pkg/service/tree"
bearertest "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/bearer/test"
cid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/container/id"
@ -287,10 +288,15 @@ func prepareHandlerContextBase(config *handlerConfig, log *zap.Logger) (*handler
placementPolicies: make(map[string]netmap.PlacementPolicy),
}
h := &handler{
log: log,
obj: layer.NewLayer(ctx, log, tp, layerCfg),
cfg: cfg,
ape: newAPEMock(),
log: log,
obj: layer.NewLayer(ctx, log, tp, layerCfg),
cfg: cfg,
policyEngine: PolicyEngine{
APE: newAPEMock(),
Converter: policyengine.NewConverter(policyengine.Config{
VersionFetcher: apeConverterMock{version: policyengine.V1},
}),
},
frostfsid: newFrostfsIDMock(),
}
@ -377,6 +383,14 @@ func getMinCacheConfig(logger *zap.Logger) *layer.CachesConfig {
}
}
type apeConverterMock struct {
version policyengine.ConverterVersion
}
func (a apeConverterMock) ConverterVersion() policyengine.ConverterVersion {
return a.version
}
type apeMock struct {
chainMap map[engine.Target][]*chain.Chain
policyMap map[string][]byte