This article assumes that you already have a working System Center Configuration Manager and an understanding of how to configure and deploy applications using it. Important: if you plan to use the Jazz Platform agent auto-update feature, or allow users to install their own updates to the Jazz agent, you must set the detection method to UpgradeCode (as outlined below) to avoid a conflict with SCCM. Failure to do this can result in broken agent installs.
There are multiple ways to deploy the Jazz agent using SCCM. It is important to remember that a provisioning/enrollment bundle is necessary to enroll an agent to a chosen Jazz infrastructure, and as such the bundle must be provided as part of the package. This is generally done in one of two ways. 1) Push both the installer file and the enrollment bundle to the machine and run a script to install, or 2) Place the enrollment bundle on an accessible network file server, and specify the location as part of the installer command.
Method 1 - deploy the enrollment bundle and MSI together
- Generate and enrollment bundle with max_uses set to (at least) the number of machines to which you need to deploy.
- Create a batch script as follows (assuming the enrollment bundle is called jazz.bundle);
msiexec /qn /i agent_x64_release_signed.msi BUNDLE_FILEPATH="%cd%/jazz.bundle" MSIRMSHUTDOWN=2 /norestart
- Deploy the batch script, MSI and bundle together, and run the batch script to complete the agent install
Method 2 - point MSI installer to enrollment bundle on file share
- Generate an enrollment bundle and upload to a network share, ensure the system account of the machines that will be installing the agent can access this;
- Create a new application in SCCM for the Jazz Agent, set the installation command as follows;
msiexec /i agent_x64_release_signed.msi /qn BUNDLE_FILEPATH=\\FILESERVER\software\bundles\agent.bundle /L*v C:\jazz-install.txt MSIRMSHUTDOWN=2
Note: Where \\FILESERVER\software\bundles\agent.bundle is the absolute path to the enrollment bundle on the network share from the previous step (relative paths are not supported).
Further SCCM configuration (Important!)
- Set the detection method in the deployment type to use the UpgradeCode registry entry. By default, SCCM uses the ProductCode that it detects from the MSI, however this will change when an update package is pushed by the Jazz Platform, and thus trigger an unnecessary downgrade by SCCM.
- to do this, view the properties on the application and select the Deployment Types tab
- Select the deployment type we are using and click Edit
- From here, click Detection Method.
- Next we need to select the current method and click Edit Clause.
- We will need to make the changes as seen below:
The values need to be set are:
- We need to change the Setting Type to "Registry"
- The Hive need to be set to "HKEY_CLASSES_ROOT"
- the Key needs to be set to:
- From here we can click OK to set the detection method. Select OK to close the properties of the deployment type. Select OK to close the properties of the application.
- Check the enrollment logs at %PROGRAMDATA%\Jazz Networks\Agent\logs\enroll.log - if this reports the it isn’t possible to open the bundle file then check the path is correct and the system user is able to access this file. “The system cannot find the file specified.” errors can also be indicative of permissions errors if the system user does not have file list permissions to the enclosing folder.