smart group to update ARD client

misterfriendly
New Contributor

It's easy enough in ARD Admin to search for computers that are running old versions of ARD client, and update them by hand when I happen to see them. Is there a way to automate this process in Casper?

iow, can I create a smart group that finds every Mac with an old version of ARD client? ARD client is not an "application" as such, so I'm not sure how to query the inventory for that.

1 REPLY 1

mm2270
Legendary Contributor III

To get that info you need to create an Extension Attribute in your JSS that would collect the ARDAgent.app version. Once you have that you can build a Smart Group for Macs that aren't running, say, 3.7.1, or whatever version you want to get them upgraded to.
Here's what I would do for the Extension Attribute script

#!/bin/sh

echo "<result>$(defaults read /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Info.plist CFBundleShortVersionString)</result>"

On my Mac that pulls the string "3.7" into the results field.

Another approach might be, if you're using an internal SUS or just have clients pointed to Apple's Software Update, enable the ARD Agent latest update version in your SUS if needed, then enable collection of Software Updates in the JSS as part of inventory collection. You then should start seeing clients report in as needing that update, which you can use as criteria to scope the update to.

Edit: Just wanted to mention that a possible downside to the second approach is that every time your Macs collect inventory they will be querying for software updates which can increase recon time, so some folks decide not to enable this for that reason.