New Property Formats in AnthillPro

Starting in 3.7.4, new property formats were added. There are two big shifts:

  • Optional, shorter syntax
  • Optionally resolve properties to blank

As someone who uses properties in AnthillPro pretty religiously, I’m excited by both. However, it appears that many teams didn’t notice the new options, so I’ll provide an overview here.

Shorter Formats

Properties in AnthillPro have traditionally been referenced with the syntax ${property:foo} for standard properties and ${agent:foo} for agent specific properties. There’s also the legacy ${foo} syntax that works for agent properties. This is well and good, but we noticed it could be a lot of typing and could result in some hard to read command lines or options. So there is a shortened option of each: ${p:foo} and ${a:foo} are now legal for standard and agent properties respectively. Continue reading

AnthillPro Video: User selectable agents for deploy/test

One of my favorite features in AnthillPro 3.7 is also one of the least well understood ones. Scripted workflow properties allow the system to prompt users to supply input to a workflow based on current conditions, other properties values, or even the output of a quick job.

In this video, we look at scenario where the team wants to give the user kicking off the workflow a list of all the agents that are online in the target environment to select which agents the workflow will run on. We’ve seen this technique used quite a lot for ad-hoc testing and occasionally in deployment scenarios where each tester has one or two machines in QA that belongs to them.

The scripts mentioned in the video are available in the AnthillPro script repository.

Configure a Multiplatform Build in AnthillPro

A common build scenario is to need to compile on several different platforms. The basic build is all the same, but a couple parameters change platform to platform. Here we look at the basics of configuring this kind of scenario in AnthillPro.

You need:

  • A build job that is parameterized
  • A workflow that iterates over that build job for each platform
  • An agent filter that directs each iteration to the appropriate platform
  • Properties on the iteration that are the build job parameters and inform the filter

Complex Builds with Continuous Integration

Modeling Complex Workflows

A few weeks ago, I was visiting a customer who had a pretty complicated build process. In telling me just how complicated their build was, he grabbed a piece of paper and sketched out the basic process of what needs to happen. The sketch was something like what you see below (I’ve redrawn it to protect the confidential information).
Full Size 
Continue reading