Introduce a new service: ape_manager #1105

Merged
fyrchik merged 3 commits from aarifullin/frostfs-node:feat/ape_manager into master 2024-05-27 09:34:25 +00:00

3 commits

Author SHA1 Message Date
54bc1ee58a [#1105] cli: Add apemanager commands
All checks were successful
DCO action / DCO (pull_request) Successful in 6m41s
Vulncheck / Vulncheck (pull_request) Successful in 8m42s
Build / Build Components (1.21) (pull_request) Successful in 11m56s
Build / Build Components (1.22) (pull_request) Successful in 11m51s
Pre-commit hooks / Pre-commit (pull_request) Successful in 16m19s
Tests and linters / Lint (pull_request) Successful in 4m14s
Tests and linters / gopls check (pull_request) Successful in 4m5s
Tests and linters / Staticcheck (pull_request) Successful in 4m10s
Tests and linters / Tests (1.21) (pull_request) Successful in 9m24s
Tests and linters / Tests with -race (pull_request) Successful in 9m15s
Tests and linters / Tests (1.22) (pull_request) Successful in 11m54s
Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-05-20 17:09:16 +03:00
af68ea0051 [#1105] apemanager: Implement apemanager service
* Introduce grpc server for apemanager service and
  its implementation in `pkg/services/apemanager`.

Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-05-20 17:09:16 +03:00
a8a33a5e1d [#1105] ape: Introduce contract storage with proxy contract verification
* `ProxyVerificationContractStorage` uses Proxy contract as a cosigner.
* `ProxyVerificationContractStorage` recreates a contract storage for each handler
  invocation because of an issue: rpc-actor from morph client may be expired. This
  way won't create a bottlenecks because it is expected that this contract storage
  implementation will be used not so often.
* Make morph client return `RPCActor` (that is websocket client in fact).
* Make `SwitchRPCGuardedActor` return `RPCActor` as it will be used for
  `ProxyVerificationContractStorage`.

Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
2024-05-20 17:09:16 +03:00