TommyThomassen --
I think part of the problem you're running into is that the GlobalProtect app has a funky build version in the Info.plist (such as 5.0.2-13).
Hub (using internal apps) uses 3 main methods to determine if an app needs to be installed: install check script (in the UI), the Installs Array (in the plist), or the receipts array (in the plist).
Since the Workspace ONE Admin Assistant can't pull out the version number (and the receipts left by the installer process always show a version of "0", you'll need to make some modifications to make this work.
1). Rename the plist/pkg files before you upload them:
2). Change the plist file as such:
3). When creating the app assignment in the Workspace ONE console, use an install check script (this is basic, but you get the point):
#!/bin/zsh
if [ -f /Applications/GlobalProtect.app/Contents/Info.plist ]
then
VERSION=$(/usr/bin/defaults read /Applications/GlobalProtect.app/Contents/Info.plist CFBundleShortVersionString) ;
if [ $VERSION = "5.0.2-13" ]
then
echo $VERSION
echo "Correct Version Installed - No Install Needed"
exit 1 ;
else
echo $VERSION
echo "Wrong Version - ReInstall"
exit 0 ;
fi
else
echo "Install Required"
echo "Info.plist Not Found"
exit 0 ;
fi
With the script written this way, you can run tail -F -n 60 /Library/Application\ Support/AirWatch/Data/Munki/Managed\ Installs/Logs/ManagedSoftwareUpdate.log and see the output of the script on your test machine so you can see how the installcheck script logic is working. Again, this is a very basic Install Check script, so you may want to explore something more robust and/or set it up to not downgrade the client if it automatically updates?
With regards to your second scenario, one option is you could use the post-install script to echo the entire contents of the XML to a file in the correct place. This basically embeds the XML into the catalog entry for that app install and can lay it down when the install runs. Short of that, you have 2 options: