In my last blog post I wrote about an eZ Publish Puppet module that I'd created that could be used to setup and install eZ Publish.
Its been awhile since I'd done any work on it (and blogged for that matter!) and in that time both Puppet and Vagrant have matured considerably. I've also had more experience creating Puppet modules and managing systems with Puppet.
I've decided to re-write the eZ Publish module from scratch utilising Puppets own modules for apache and mysql.
The result is available on GitHub and in the Puppet Module Forge.
The overall functionality in the new module is essentially the same as the old one, but elements have been decoupled. This allows for the various components that make up an eZ Publish "stack" to be combined to match the desired architecture. e.g. a standalone system with the database and application on the one system to a clustered systems where different components are on separate systems.
In the coming weeks I hope to post some examples of how it can be used to configure different architectures.
Currently the module is specific to Debian/Ubuntu systems but I hope to update it in the near future to also work with Redhat/CentOS systems.