Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[EPIC] Plugin Architecture #12

Open
phanimahesh opened this issue Sep 7, 2017 · 0 comments
Open

[EPIC] Plugin Architecture #12

phanimahesh opened this issue Sep 7, 2017 · 0 comments

Comments

@phanimahesh
Copy link
Member

A lot of changes need to be done to properly support plugins:

Capabilities of plugins:

  • Defining the following strategies: auth, rate limit, load balancing, logging/analytics
  • Define and manage their own private data without having to bring their own storage layers
    Example:
    Key based auth should be able to store keys in mnesia (or whatever other core data stores we support later) without having to deal with mnesia directly.
  • Define their own HTTP routes under admin API
    Example:
    Key based auth plugin needs routes to generate and revoke keys
  • Can be enabled or disabled on the fly
    Adding new plugins or disabling existing ones should not require recompiling the project
    It should be possible to enable/disable plugins in a running instance without rebooting

This epic tracks all work related to these efforts.

All of these require that a plugin registration and initialisation process be established, along with well defined apis for plugins.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants