App Distribution Catalog
Use the App distribution > App catalog page to view a summary of configured apps and their deployment status.
Follow these steps to create and distribute an app. Select links in the steps for more detail on that step.
- Select App distribution > App catalog.
- Select Add to begin configuring your app.
- On the Overview tab, select Untitled (x) at the top and give your distribution a name. You can also enter a more detailed Description and specify whether this app should allow an On-demand install. You can initiate on-demand installs on the Devices page after creating an app distribution. For details, see Installing an app from the Devices page.
- On the Package tab, use the package actions builder to create your package.
- On the Distribution tab, specify the targets, app configuration, and installation schedule.
Here are some additional things to know about the App Catalog main page.
The Deployment status column shows these states:
- Compliant: The app was successfully installed or it was detected as previously installed.
- Pending: The app will be installed the next time the device checks in (by default every four hours), or the installation is in progress.
- Not compliant: The installation failed.
Selecting a deployment status item shows a filtered view containing all devices in that state targeted by that app.
The options menu ( ) on the right allows you to Edit, Rename, Clone, Enable, Disable, or Delete an app.
Cloning an app is useful for creating standardized app templates and does the following:
- Copies details from the Overview tab.
- Includes the latest package version only.
- Disables all distributions and removes targets from the "System - on demand" default distribution.
When adding or editing an app, the Overview tab lets you edit the package name and enter an app Description. You can also select whether the app should allow an On-demand install.
On-demand packages are available on the Device page for installation on the selected device. In a device's details page, use the Install app action from the Actions panel. For more information, see Installing an app from the Devices page.
When adding or editing an app, use the Package tab actions builder to configure when and how the app should be installed. The Package tab keeps track of package edits you have saved. Select a version and select Edit version to base your edits on that version.
In the package action editor, drag an action you want and drop it into the order you want it to happen. Select an action in the builder tree to configure it. The actions builder is flexible and allows you to have multiple Download, Execute, and other actions if your app requires it.
Generally, an app distribution should consist of at least the following:
- Download file: The URL where the app installation files can be downloaded. You can specify multiple files here and you can have multiple download file actions if necessary. Files can be hosted on any HTTP(S) location that does not require authentication and that clients you are deploying to can access.
- SHA256 hash value: The download file option also includes an optional hash value field. If you provide a hash value, app distribution will validate the downloaded file's hash value. If the values do not match, app distribution will delete the downloaded file and the stop the distribution. If you want app distribution to use advanced distribution technologies like peer download, you must provide a hash value.
- Execute or Execute MSI: The plain Execute action allows you to specify a file to execute, a command line, and what user the installer should run as. The Execute MSI action lets you select MSI-specific operations and display options.
Additional actions include:
- Detection rules: These can help determine whether the app is already installed and therefore should not be installed again.
IMPORTANT: If any detection step resolves as true, package processing stops and the device's app state will display as compliant.
See App Distribution Detection Rules for more information on the available detection rules.
- File operation: Includes create folders; move, copy, and delete files; zip or unzip.
- Reboot: Reboots the device according to the device's agent policy. When an app requires a reboot, no other apps can be installed to that device until it reboots.
- Script: Execute a batch file or PowerShell script. The PowerShell Core option does not install PowerShell Core if it is missing. The Auto option will first try PowerShell Core, and if that isn't installed it will fall back to PowerShell. A script editor is built in to this action. Your script code needs to be added inside this editor.
By default, app distribution uses this path while working with a package: C:\Program Data\Ivanti\Ivanti Cloud Agent\Agent\SWD\working. File and script operations will assume this path unless you specify otherwise. The contents of this folder are deleted after an app finishes processing.
When editing a package in the app catalog, the Package tab tracks your package revisions. When you edit a package version, saving it creates a new version. App distribution will use the latest package version for deployment when it runs.
An app that fails to install successfully will be retried two more times. Creating a new version resets this counter.
The package version that was installed on a device is displayed on the Deployment status page.
Use the Distribution tab to identify which devices will be targeted and how and when the distribution will occur.
You may want to add multiple distributions to an app. For example, you may want to stage your distributions by adding a distribution that first covers an initial test group and then add additional distributions that roll out the app later to the rest of your company. Or, you may want to create a distribution that targets initial devices week one, another distribution that targets additional devices week two, and so on.
Select the Add distribution button to add a new distribution, or select an existing distribution to edit it. When adding a new distribution, give your distribution a unique name by selecting the name at the top and editing it. You will not be able to save your changes until you do this.
Each distribution for an app contains:
- An Enabled/Disabled toggle. Disabling a previously enabled distribution does not change any distributions that have been completed. It only disables targeting for distributions that have not completed yet. It can take several hours for a toggle change to propagate to agents.
- Targets for this app.
- The App configuration profile you want to use, which specifies either install once or always require to be installed.
- The Schedule for this app.
You can target from these sources:
- Neurons groups
- LDAP groups from device inventory. LDAP resolution is done against connector inventory data.
Ivanti Neurons groups and LDAP groups are resolved once a day.
Scheduling a distribution
All distributions include a schedule. The default schedule is to Run now, which means the next time the app distribution agent runs on a targeted device, that app will be installed.
By default, the app distribution agent on devices checks for package updates every four hours. In addition to this agent check interval, the cloud targeting service that resolves distribution targets runs every six hours. It is this combination of timing that determines how quickly a targeted device will react to app distribution changes.
When you initially create a distribution, the targeting service will resolve targets immediately. It is primarily revisions to an existing distribution later on that are subject to a larger possible time interval, up to 10 hours.
You also have a Start after the selected date and time option. With this option, the app distribution agent will wait and install the app after the specified time. The time can be either Local or UTC (Coordinated Universal Time).
- When Local is selected, each device will run the package after its local time reaches the selected date and time.
- When UTC is selected, all devices will run the package after the selected UTC date and time.
Understanding default distributions and distribution priorities
There are two default distributions that are always included and that can not be deleted:
- System - excluded devices: Devices that should never install this app. This distribution is empty by default. Each app has its own excluded devices distribution. Add devices you want to exclude here as necessary. If a device is in this distribution and also in other distributions that you add for this app, this distribution takes priority and the device will not be targeted.
- System - on demand installs: When installing an app on a device from the Device view, the device is added to this distribution. It is set to Install once (in contrast to Always require to be installed). You can also manually add devices to this distribution. If an added device is available, its app distribution agent is contacted directly so it can immediately begin the installation. Group targeting is not allowed in this distribution.
On the Distribution tab, distributions are sorted by priority. The priority affects which distribution a device gets targeted by if it is targeted by multiple distributions. If a device appears in multiple distributions, the highest priority distribution options will be used, such as those controlling when the app will be installed.