June 21, 2021
The last week was more about discussions, design, presentations and evaluation rather than coding. After completing the benchmarking of various golang plugin systems, it was time to finalize a plugin system. Before finalizing the plugin system, I had a task to prepare a presentation indicating all the trade-offs of the various plugin systems. Along with that, I also had to give in my take for the plugin system that would fit our use case. After a healthy discussions with the mentors, a decision was made to move forward with the hashicorp go-plugin system. Hashicorp go-plugin serves plugin over rpc/gRPC. What protocol to use (rpc or grpc) is yet to be decided.
In order to facilitate the discussions, I’ve opened up a github issue in the reva repository. This is further help in paving way for building the plugin architecture.
The plan for next week is to continue the discussions and design of the runtime-plugins.
There weren’t any issues or roadblocks last week. I hope every week goes by as smoothly as this one! :)