ehmatthes / django-simple-deploy

A reusable Django app that configures your project for deployment
BSD 3-Clause "New" or "Revised" License
304 stars 26 forks source link

Implement a plugin model #313

Open ehmatthes opened 2 months ago

ehmatthes commented 2 months ago

This project can only reach its full potential through the implementation of a plugin model. That said, the fact that this involves configuration for deployment means there are security implications. A pretty careful approach to facilitating a plugin model is warranted.

There are other, simpler 1.0 tasks to close out. But closing those out after implementing the plugin model will help make sure that new architecture is done appropriately.

After implementing the internal plugin model, we should do as much refactoring as possible before splitting out into external plugins. Right now, any change that affects both a plugin and core is contained in a single release. After separating into external plugins, that would require at least two releases, and four releases if it affects core and all plugins. The benefit will be that individual plugins can be developed and released on their own schedule from that point forward.

ehmatthes commented 1 month ago

Working notes

ehmatthes commented 1 month ago

External plugin notes