Hacker News new | ask | show | jobs
by nmaludy 2043 days ago
I do agree that Ansible is quite easy to start with, YAML being a fairly simply syntax to understand if you've never coded before.

One of the things i struggle with most in regards to Ansible is that things that are semi-interesting like loops, conditionals, data munging, etc are quite complicated and cumbersome. I agree that things like Puppet and Chef make these tasks _much_ easier and i end up writing more understandable code that works just like any other scripting language.

I also _very_ much appreciate the fact that i can unit test my code in Puppet and Chef. As part of a good DevOps practice, unit testing along with integration/acceptance testing is crucial!

On top of that i believe that the roles in Ansible Galaxy are very much sub-par when compared to modules in Puppet Forge. Most of the modules in Ansible Galaxy are simply "install package, start the service". In general, Puppet Forge modules are much more in-depth and allow for configuration and customization to many aspects of the application you're configuring.

Also, check out Bolt from Puppet: https://puppet.com/docs/bolt/latest/bolt.html

Bolt is an "ad-hoc task runner" very much like Ansible. One of the cool things you can do with Bolt though is apply Puppet code as part of the run, so you can reuse all of the Puppet Forge modules that already exist.

1 comments

Not sure what does you're using in puppet forge but everyone of the modules I've used are no longer being maintained as the develops have all switched to ansible and left the puppet modules to rot. While ill agree there is a learning curve to ansible for advanced things like loops and conditionals, you have everything a scripting language does.