Ability to install and uninstall plugins directly from Admin GUI

It would be super nice to have this…

For big forums, which have high traffic and its not good that forum goes down as i have to do

./launcher rebuild app

Each time i install/uninstall a plugin, this causes my forum to go down for a while and users get frustrated.

It would be nice to have the ability to install/unintsall and rebuild/restart discourse directly from admin GUI.

I do not believe this is possible because of the way plugins are integrated into the resources of the app which needs to be done at build time, especially because some of the plugin elements impact the back end.

Several mitigations:

  1. Customise with Theme Components as much as possible. These can be swapped out and updated online.

  2. Decide on a set of plugins and stick to that list. Why do you need to change the set-up so often?

  3. If you just need to update a plugin use the online upgrade tool.

  4. Schedule the addition of new plugins to when you are forced to do a rebuild because of other fundamental changes in the core app.

9 Likes

The only real recommendation we can give here is to plan in advance. There’s just no substitute for it.

Use a small instance to test and approve any plugin changes you want to make, then schedule a window each week or month to roll up all those changes on your live site.

That way your users won’t be significantly impacted by such activities, and you will significantly reduce the risk of additional downtime due to compatibility issues.

4 Likes

With a setup having multiple web containers, downtime during a rebuild can certainly be avoided by rebuilding / deploying one web container at a time.

5 Likes

I’m sorry @Faizan_Zahid , but you could really do better on that title. Maybe you meant “plugins” and not “Discourse”. Here I was expecting someone who was asking for a feature to remove Discourse from a server :wink:

You want to be able to install/uninstall plugins without having to rebuild. Seems it’s not possible, unfortunately :confused:
You would then want to minimize downtime when you need to rebuild. This has already been a subject lately: Help with “zero downtime” setup (which didn’t really go where it probably should have).

What we may need here, is a nice tutorial on how to setup a 2 web-container install and how to use it. This seems the most efficient setup (and also probably the most complicated one). I don’t have enough knowledge to do such a tutorial, or I would. Is there someone willing to ?

3 Likes

I plan on taking up the chore of making easy guides for a variety of advanced use cases including the above. It’s on the backlog :slight_smile:

2 Likes

If your discourse is using Docker then you could use Procourse installer.

That does a rebuild as well.

1 Like

While it still works today, AFAIK Procourse has stopped serving customers. I would be very hesitant to recommend it without a clear maintenance roadmap.

2 Likes