Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a plugin system for allowing the creation of external plugins for different plugable components in reva, for example grpc drivers, http services and middlewares.
An external plugin to register itself must use the function
reva.RegisterPlugin
and provide a plugin ID, in the form of ., and a new func depending on the driver it is implementing.Plugins have been designed to be included in the final reva binary, to ease the deployment. This can be achieved, adding the import
_ "<repository_path>"
into the filecmd/revad/main.go
and then compiling revad. Once the plugin has been included in the final binary, it can be configured as a normal driver in reva.The repository https://github.com/gmgigi96/reva-plugin-example can be used as a simple example on how a plugin can be created.