Testing Puppet manifests at multiple levels, what are the tools available and how maintained are they ?
I am admittedly new to the world of Puppet, so I'm not that aware of what the community is talking about and what's coming up for Puppet.
That being said, looking around I see many tools that don't seem to have the support required.
- rspec-puppet: Last commit was a pull request 22 days ago with the last commit done by the author more than 2 months ago
- hiera-puppet-helper: A tool that I find amazing to mock hiera data so the tests and their results aren't bound by the real hiera data. Yet its last update was on Sep 18, 2013
- rspec-puppet-unit-testing: This tool seemed really nice to do real unit tests on modules, as it is now I haven't found a tool that allows mocking other modules so unit testing isn't really possible. Last update 8 months ago...
- beaker: The only tool I found that is actively worked on. Only downside is that Windows support is... Very limited. At least from my experience.
Right now, I have two testing levels:
- Done with Serverspec (like I said, I couldn't get beaker to behave properly on Windows...)
- What I can test is limited, but I least I can test
- Done with rspec-puppet and hiera-puppet-helper to create fake hiera data
- I really like how I don't have to deal with symlinks (on Windows, eww) and can change my actually hiera data without changing my tests' expected data
It works, but seeing as those projects are... let's say on the slow burner, I want to know what you guys use to test your modules. What's your setup like? Did you fork those project to keep them updated or do you simply keep using the last stable versions? Is testing in the Puppet world too young? I feel as if the frameworks and tools for this aren't mature yet. Am I just missing something?