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

Feature Request: Plugin Architecture #1850

Open
SoarinFerret opened this issue Apr 19, 2024 · 1 comment
Open

Feature Request: Plugin Architecture #1850

SoarinFerret opened this issue Apr 19, 2024 · 1 comment

Comments

@SoarinFerret
Copy link

Is your feature request related to a problem? Please describe.
Lots of us have ideas on ways we would like to extend Tactical RMM. However, things that are useful for one user may not be useful for another. For example, an integration with an external monitoring system like Zabbix or PRTG.

Describe the solution you'd like
It would be nice if we could build plugins to extend the functionality of TacticalRMM. For example, lets say I wanted a plugin for Zabbix. It could add an additional tab to the UI for each host, then allow me to view all the metrics in relation to that host from Zabbix. Same thing for something like PRTG. Another would be I have a plugin I built for Rundeck to access all my hosts. It would be nice if I could execute those rundeck jobs from Tactical RMM. Another nice item would be integration with a ticketing system.

Describe alternatives you've considered
Building a system that integrates all the services I use, and integrating this RMM with that as well.

Additional context
For other Django applications that have built a plugin architecture, you could look at Netbox.

Essentially, any data for a plugin would exist in a separate table from the rest of the RMM (starting with plugin_), to ensure a clean uninstall. Additionally, plugins should not affect Core UI elements, only add on. For example, adding on new tabs to the Host View, maybe an additional dropdown in the right click menu, etc. Plugins should also be able to be enabled / disabled from the GUI.

I would be happy to help build out this functionality if its considered useful, while providing some example plugins that would help my use case.

@silversword411
Copy link
Collaborator

It's on a long-term wish list.

The main concerns are making sure any extension with a security vulnerability or bugs can't adversely compromise TRMM.

If you think you have a viable start keep it small and simple. Do a PR so it can be evaluated for integration.

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

No branches or pull requests

2 participants