Endpoint Services, Munki, Using Conditions in Manifests
This article provides information on using conditional arrays in Munki manifests.
Munki Mac Endpoint Management
University of Illinois IT Pros leveraging Technology Services Endpoint Services' Munki Mac Endpoint Management
- General Information
- Creating Manifest Conditions
- Applying Manifest Conditions
- Manifest Conditions for Configuration Profiles
Munki allows for the conditional installation or removal of items based on certain conditions. Using conditions in your Munki manifests can cut down on the number of superfluous Munki warnings appearing in your MunkiReport dashboard. Adding conditions to require a minimum or maximum version of macOS is a common use case. (Even though minimum and maximum OS versions added to pkginfo files will ultimately prevent items from being installed on incompatible operating systems, Munki will still generate warning messages. You can avoid these messages by creating conditions within your Munki manifests, and then applying them to targeted software packages.)
- Open MunkiAdmin and go to the Manifests view. (If you are new to MunkiAdmin, see our KB article.)
- Locate the manifest you want to modify, and double-click to open it. This will most likely be your unit's base_default or other shared manifest.
- Select Conditions, and click the plus symbol to open the Predicate Editor window.
- Use the dropdown menus to build the desired condition(s). For example, to create a condition that excludes any device on macOS 11 (Big Sur) and up, set the following, then click OK to save your changes.
- To create a condition that excludes any device on macOS 10.15 and up, set the following, then click OK to save your changes.
- You can create multiple conditions within the same manifest:
- With the manifest still open in MunkiAdmin, go to the section containing the package requiring the condition--e.g. Optional Installs.
- Click on the Condition column to select the desired condition for a given package.
- Click the Save button in the MunkiAdmin toolbar to save your changes.
One common use case for applying manifest conditions is with configuration profile packages, which Munki can't install on macOS 11 and up. Wherever they appear in your Munki manifests, these profiles should have a condition applied to exclude macOS 11+, as in the first screenshot at the top of this article. The below screenshot contains a list of profile packages in the Multi-Tenant Munki service, all with the condition applied to macOS 11+.
Visit the Munki wiki for more details about using conditions in manifests.