Just looking to put some ideas on to paper about how I would go about automating numerous changes to the out of box FusionPBX installation, ready for a customer to use. Currently, it's a little bit of a manual affair where I have a little checklist of variables, default settings, permissions, dialplan tweaks and menu changes I need to make. All good, but it is a bit slow, and if I forget something like a recording permission, then inevitably a customer admin fills up their instance with recordings and then moan when I take it away without them paying. It would be nice to have something a bit reliable where I can run the fusionpbx-installer and then the hfoster-customiser right after.
My ideas so far:
1. Master database dump. Load the database every single time. I'm not sure how much of a future problem it would be if all the UUIDs were the same across instances. Potential for me to miss out on new default settings or permissions if I'm not careful.
2. A ton of sed edits on various files, especially app_defaults.php. How stable would this remain? Will I have to be modifying these sed lines a lot?
3. Maintaining a private fork, and trying to match upstream as best as possible. Is this a lot of work to undertake for some minor changes?
Any ideas or thoughts are welcome. I'm not expecting a simple answer, but maybe something that just lights the way.
My ideas so far:
1. Master database dump. Load the database every single time. I'm not sure how much of a future problem it would be if all the UUIDs were the same across instances. Potential for me to miss out on new default settings or permissions if I'm not careful.
2. A ton of sed edits on various files, especially app_defaults.php. How stable would this remain? Will I have to be modifying these sed lines a lot?
3. Maintaining a private fork, and trying to match upstream as best as possible. Is this a lot of work to undertake for some minor changes?
Any ideas or thoughts are welcome. I'm not expecting a simple answer, but maybe something that just lights the way.