frostfs-s3-lifecycler/internal/lifecycle/dependencies.go
Denis Kirillov 17717ac42e
All checks were successful
/ DCO (pull_request) Successful in 1m15s
/ Vulncheck (pull_request) Successful in 1m18s
/ Builds (1.21) (pull_request) Successful in 1m35s
/ Builds (1.22) (pull_request) Successful in 1m30s
/ Lint (pull_request) Successful in 2m48s
/ Tests (1.21) (pull_request) Successful in 1m32s
/ Tests (1.22) (pull_request) Successful in 1m30s
[#17] go.mod: Update s3-gw to eliminate redundant logs
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2024-08-05 12:03:03 +03:00

37 lines
1.1 KiB
Go

package lifecycle
import (
"context"
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/data"
cid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/container/id"
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/netmap"
oid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object/id"
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/pool"
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/user"
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
"github.com/nspcc-dev/neo-go/pkg/util"
)
type UserFetcher interface {
Users() ([]util.Uint160, error)
UserKey(hash util.Uint160) (*keys.PublicKey, error)
}
type ContainerFetcher interface {
Containers(owner user.ID) ([]cid.ID, error)
}
type TreeFetcher interface {
GetBucketLifecycleConfiguration(ctx context.Context, bktInfo *data.BucketInfo) (oid.Address, error)
}
type FrostFSFetcher interface {
GetObject(ctx context.Context, addr oid.Address) (pool.ResGetObject, error)
NetworkInfo(ctx context.Context) (*netmap.NetworkInfo, error)
DeleteObject(ctx context.Context, addr oid.Address) error
}
type CredentialSource interface {
Credentials(ctx context.Context, pk *keys.PublicKey) (*keys.PrivateKey, error)
}