Operations | Monitoring | ITSM | DevOps | Cloud

Getting started with Ansible playbooks in CFEngine

Recently, I’ve been playing around with the ansible promise type by Fabio Tranchitella. It’s amazing how easy it is to leverage the benefits of agents with all the existing automation from the ansible community. Hence, I wanted to share it in a blog post, with an emphasis on easy. Let’s start off by creating a new cfbs project in a cfengine-ansible directory. Make sure to answer yes on the prompt to build on top of the default policy set.

May the 4th be with you and your data

Drive failures are a matter of when, not if. The good news is that most modern drives warn you before they fail, using S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology). The challenge is collecting that data across a fleet and making it actionable. The new inventory-smartctl module makes this straightforward with a single cfbs add. Once installed, the module auto-detects all storage devices, caches their SMART data, and exposes it as inventory attributes in Mission Portal.

Change in behavior: findfiles() and directory trailing slashes

CFEngine 3.24.4+, 3.27.1+, and 3.28.0+ include a change to how findfiles() handles trailing slashes on directory paths. This change restores trailing slashes to directory results, but with improved consistency compared to earlier versions. The new behavior ensures that directory paths always include a trailing slash, making them reliably distinguishable from file paths regardless of the glob pattern used.