With the recent fork of Terraform to OpenTofu (https://opentofu.org) and Puppet to Openvox (OpenVox · GitHub), it made me think about devops tooling. Personally, in the past I’ve extensively used puppet with the total open source puppetserver/puppetdb/r10k/puppetboard for complete datacenter os and critical infrastructure management. In the past years, momentum has shifted towards things like ansible and terraform, which I also moved in that order between over the years since. Today I tend to use terraform when using anything with a web api and ansible when it’s blunt force trauma style configuration management. I personally find ansible requiring a lot of coding to get stuff done. Terraform is nice for lots of things, especially glueing services together however, both are difficult when you have to isolate data to pass into something else.
So that all being said, what’s everyone using today. How are you glueing stuff together?
As I known, AWX, the open-source upstream of Red Hat Ansible Tower can provides a centralized Web UI for managing all modules of Ansible atutomation, such as playbook,inventories worflows and so on.
I’ve played with AWX(Tower) some time back. I still have my gripes about ansible. I haven’t tried the new Ansible Community Execution Environment.
However I started reading about it. I’m sure it’s going to make consistency and developer experience a bit easier. Much like terraform, using ansible across teams, from my opinion puts you in a position where you have to keep everyone’s dev environement in check. If you tend to keep keep your code updated with the upstream changes, it forces you to keep everything in check, including keeping ansible and the used, roles and collections updated. (… O, hello AWX/Tower) There’s been a lot of evolution in ansible’s collections and roles in the last few years as well.
Great Question! For DevOps- CICD, I think GitHub Actions,Cloud-Native CI/CD like AWS CodePipeline and Google Cloud Build. are all very popular for automating builds and deployments. ArgoCD is a good Continuous Delivery Tool. For Infrastructure as Code (IaC): Terraform is a leading choice for managing infrastructure across multiple clouds.