Operations | Monitoring | ITSM | DevOps | Cloud

Feature Friday #3: execresult_as_data()

When you want to inspect both the return code and output from a command execresult_as_data() might be the function you are searching for. Most CFEngine policy writers have used execresult() and returnszero(). They are useful when you want to do something based on the output of a command or based on its successful execution (returning zero). For example: /tmp/feature-friday-3.cf command output But, sometimes, you care about specific return codes.

9 Creative and Practical Uses for NFC Tags

The NFC (Near Field Communication) technology presents many opportunities to improve our lives. These small tags can store vast information and commands that simplify tasks and automate routines. With the NFC, you can significantly simplify your life processes while free to customize their functionality to your preferences. Here's a curated list of creative and pragmatic ways to use NFC tags to your advantage.

Patch Management Software: Your Guide to Picking a Patch Manager (with Examples)

Patch management software automatically applies updates to software, firmware, and other system components. Patching makes sure resources are up to date with the latest security and performance improvements to keep software protected and performing as expected.

Critical Platform Engineering Metrics: KPIs that Matter for Success

Platform engineering metrics and/or platform engineering KPIs (Key Performance Indicators) can help us measure the success of this evolving approach and its impact on DevOps. According to our 2024 State of DevOps Report: The Evolution of Platform Engineering — 43% of organizations report that they have had a platform team from 3-5 years already. With this maturity, it’s important to measure what’s working and what isn’t working using the same indicators of success across the board.

From MLOps to LLMOps: The evolution of automation for AI-powered applications

Machine learning operations (MLOps) has become the backbone of efficient artificial intelligence (AI) development. Blending ML with development and operations best practices, MLOps streamlines deploying ML models via continuous testing, updating, and monitoring. But as ML and AI use cases continue to expand, a need arises for specialized tools and best practices to handle the particular conditions of complex AI apps — like those using large language models (LLMs).

Microsoft System Center Infrastructure Monitoring and Automation in Action

The IT landscape is currently evolving faster than ever before, and the move to cloud-based solutions has emerged as a game-changer for businesses looking to future proof their infrastructure. However, the move to cloud solutions is not always straightforward and comes with challenges due to changes in management access.

Feature Friday #2: $(with)

Ever wanted to manipulate a string - temporarily - for an individual promise? Check out the with attribute and its special, $(with) variable. Sometimes you need some variation on a string for a specific case. Traditionally, to achieve this you’d simply define another variable. Here is a contrived example: I have a string, nginx and I want to emit a report that contains both the string itself and the upper case version of the string.

Fault Injection in your release automation

One of the real successes of the Agile Software development movement has been the push to have regular, frequent deployments. This has manifested as build and deployment automation and the general adoption of CI/CD. As engineers automate more processes of their software release lifecycle, an important question is how to automate Quality Assurance, which includes resilience testing and, more specifically, Fault Injection.

Feature Friday #1: ifelse()

Looking for a way to concisely set a variable conditionally? Have you heard of ifelse()? In CFEngine, traditionally class expressions are used to constrain promises to different contexts. Setting a variable to different values based on context might look like this: /tmp/feature-friday-1.cf command output That’s great, lots of flexibility, but with an increasing number of options the policy can get quite long and it’s easier for a human interpreter to lose track of the context.