Dynamic switch between brassaia and irmin
What
This provides an option to select which backend context to use at runtime between Irmin and Brassaia
Why
To be able to test the brassaia backend!
How
By using the already existing Context_ops abstraction everywhere (without relying on the low_level concrete Irmin-based lib_context) and adding an new backend for Context_ops dedicated to lib_brassaia.
Manually testing the MR
Please run tests using
-
TEZOS_CONTEXT_BACKEND=Brassaia
to force the usage of Brassaia
You can use TEZOS_CONTEXT=vv
to observe debug message that should show the (non)usage of the expected library.
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rst
for the protocol and the environment,CHANGES.rst
at the root of the repository for everything else). -
Select suitable reviewers using the Reviewers
field below. -
Select as Assignee
the next person who should take action on that MR
Edited by Mathias Bourgoin