Today I pushed out a new release of my Ghost blog Puppet module. This release closes issue #2, where the blog’s service was restarted on every provision, not just on updates to its configuration. The module can finally setup the mail settings for Ghost, so that the annoying message that comes with the default setup goes away. The module also now validates all the parameters sent to the class and to the blog resource using functions provided by Puppet Labs’ stdlib module (which was already a dependency).
The module is still in its alpha stage, but I have an actual milestone for version 0.2 that I would like to reach. It will include more internal documentation, some actual unit tests, a switch to the GNU Affero General Public License (which is the main reason for a minor and not incremental version bump), and most importantly, a theme resource.
Ghost themes are generally installed from an archive file or git repository, and preferably I would like to handle both. The zip file will be easiest: wget the source and expand it. The git repository will require also knowing the revision to checkout. This feature, however it is implemented, will significantly increase the module’s usefulness.
While developing, I tried refactoring to the
params.pp inheritance pattern, but found that my current pattern of fully-scoped variables made it more easy to manage dependencies.