Injector: standalone injector binary/daemon
For tests, we could run the injector in a standalone process (and check, e.g., that it can handle migration seamlessly):
-
New octez-injector binary in src/bin_injector -
Should support a subset of manager operations (iteratively), e.g.: -
transactions and smart contract calls only (for first version) -
maybe some SCORU operation in a second time -
smart contract originations
-
-
Type of injector operations that are common to all protocols (see item above) -
Registration of protocol code should be done in proto_*/lib_injectorfor all active protocols (adapt code fromsrc/proto_alpha/lib_sc_rollup_node/injector.ml) -
The injector daemon should run an RPC server, with the services: -
POST /injectto send an injection query which returns the id/hash of the injector operation (could also accept a list) -
GET /operation/{id}/statusto retrieve the injection status (pending, injected, included, confirmed, etc.) of an operation -
DELETE /operation/{id}to remove an operation from the queue -
GET /statsto get some statistics about the injector, e.g. the size of the queue, etc.
-
Edited by Alain Mebsout