MailCleaner / MailCleaner-Next

Fork of MailCleaner for Debian 12
GNU General Public License v3.0
6 stars 3 forks source link

Simplified development environment #49

Open JohnMertz opened 1 month ago

JohnMertz commented 1 month ago

I've always had 2 basic development environments:

I'd like to have one which marries the best of both worlds. ie. An image that is built separately from the latest images which comes bundled with extra development tools and which can easily be deployed in production.

The best way to do this would probably be to have an OCI image which can pull in additional packages and helpful configurations and which can be supplemented with additional secrets and options when it is created. This should include:

I have attempted similar things in the past by just installing MailCleaner in a distrobox, but I mostly just end up with the first environment described above with more regular snapshots and trouble with some container isolation issues. There are some tools that seek to make generation and publishing of distrobox images easier, such as https://github.com/ublue-os/boxkit .

It would be good if we had 2-3 simple commands which could get interested developers into a development environment with the ability to push to their fork quickly. This should be documented in the contributing guide when possible.

To start with, the OCI container may still have some isolation problems, so having it run in production may not be immediately available; being able to develop and have the WebUI work is the priority. However, if it does get to a state where it can work in production, then providing additional OCI images without the development tools so that MailCleaner can be deployed with Docker/Podman/Kubernetes would be a worthwhile goal as well.