Configuration-Management
guest@6admin.io:~$ ls ~/tags/configuration-management
Scripting is not industrialising
The boundary between ad hoc scripting and an automation platform: desired state, idempotence, inventory, secrets, reporting, traceability. Windows automates very well too; the difference is not the OS, it is platform versus script.
Windows 11 for build machines: the wrong tool
Windows 11 client on headless bare-metal build machines in a server room: the detail of the provisioning and operational friction and why Windows Server with Desktop Experience does the same job for a fraction of the pain.
Terraform creates, Ansible configures
Why IaC and configuration management do not overlap, why Terraform alone only holds in a strictly immutable model and how remote-exec is the signal that you have crossed the line.
GitOps, the word after the practice: gitflow, GitLab CI, Terraform and Ansible
The word GitOps has been spreading for a year and I read it recognizing what I was already doing: an adapted gitflow, conventions and a GitLab CI pipeline chaining Terraform to create and Ansible to configure, with git as the only source of truth. GitOps in the broad sense and the honest part of what it is not quite.
Ansible before Ansible: ssh, a CSV and a template engine
Before Ansible existed, there was my 2006-2007 contraption: a host list, an ssh loop, inventory variables in a CSV, pure bash and a template engine whose name I have shamefully forgotten. Assumed archaeology of what worked, what was missing and what Ansible later made explicit.
Puppet: my first modules, or moving from the ssh loop to declaring
After my bash scripts and my CSV inventory, Puppet: the install/config/service triad, $::operatingsystem selectors and require/notify chains. What declaring brings to the ssh loop.