I've setup individual policies in self-service that our techs can use to automatically configure machines for certain situations (I.E. Lab Machine, Classroom Machine, Workstation, etc.). Each configuration uses a custom trigger to call policies that install packages necessary for that configuration. Each package is a standard policy package install that's both available in self service and responds to the custom trigger so we can do custom configurations easily.
I would like to avoid having these configurations reinstall programs that are already present on the machine. I've setup smart groups to look for the software already present and exclude them from the scope of the package policies. However, whenever I run my configuration, the first policy that attempts to run that already has the application installed prompts with "Item no longer available" and fails at that point. Clearly this is because the machine is no longer in the scope of the policy, but there are other policies that still are.
This is an example of the flow in regards to scope: "Workstation Configuration" policy scoped to All Computers calls "jamf policy -trigger installWorkstation". " Install Adobe Reader" policy installs AdobeReader.pkg when called from self service or "installWorkstation" scoped to All Computers Excluding "Has Adobe Reader Installed" (and so on for several packages).
If Adobe Reader is not present, the process continues. But if Adobe Reader is present, "Item no longer available" appears and the process stops. Can anyone provide a clue as to where I'm going wrong with this?