Smart Group targeting applications older than specific version

danshaw
Contributor II

I know there are a bunch of requests to get < or > for application versions when creating a smart group. I would love to see this also, but know that its complicated.

In the meantime, I have a bunch of smart groups created for patching software. Currently my smart groups are pretty simple.

If Application title has Box Sync.app
AND Application Version is not like 4.0.7702

But I am starting to see a problem with users that update this software on their own and the version is newer. The smart group doesn't care that its newer and thus, the application is downgraded.

Am I missing a way that I can search for older versions of software along with future proofing them so that I don't have to babysit each smart group?

Only way that I can think of doing this right now is create an EA for each piece of software that I want to patch by reading the version number and converting it to a number. Then I can use < or > on that number.

if [ -f "/Applications/Box Sync.app/Contents/Info.plist" ] ; then
    VERSION=$( defaults read "/Applications/Box Sync.app/Contents/Info" CFBundleVersion | tr -d '.' )
else
    VERSION="Not installed"
fi

echo "<result>$VERSION</result>"

This is a lot of work! If anyone else has an easier way please do let me know.

1 REPLY 1

davidacland
Honored Contributor II
Honored Contributor II

Yep thats how we've been doing it. The built-in string version number in the JSS is really limited.

Hopefully patch reporting and management gets pushed further so things like this are easier to do.