Install Endpoint Agents for macOS using Munki and the Managed Software Center

This article covers the basic guidelines for deploying Endpoint Agents on macOS using the Managed Software Center client and Munki Server v4.

This article does not cover installation steps for the Chrome extension.

This article assumes you are using change management (GitHub, GitLab, or similar) with your server to enforce versioning.

Prerequisites

  • A functioning web server configured for Munki.

  • Managed Software Center, installed and configured on the endpoint device.

  • munkiimport, configured with your local repository details.

  • An Endpoint Agent .pkg file locally on your machine. This article assumes it is located in your download folder.

  • Permissions to transfer the .pkg file from the local machine to the Munki server.

Import the ThousandEyes Endpoint Agent into the Munki repository

  1. [Optional] Configure Git.

    If you are not using Git, skip this step.

    1. Ensure your local Git repository is up to date.

    2. Make a new branch that your CI/CD will pull from.

  2. Run the munkiimport command on your local machine. Point the file location to the downloaded Endpoint Agent. Remember to escape spaces and hyphens, as shown in the example command below:

    munkiimport ~/Downloads/Endpoint\ Agent\ for\ ThousandEyes\ -\ IT-x64-1.3.0.pkg
  3. Go through the interactive import tool for the following items:

    • Item name: - The name you use to store the package on the server. It is recommended that you accept the default name.

    • Display name: - The name that is visible to end-users. It is recommended that you enter "ThousandEyes Endpoint Agent".

    • Description: - Notes visible to the end-user in the Managed Software Center. This description can also contain administrator notes, if desired.

    • Version: - The version number of the software. Should be automatically obtained, best to leave at the default value.

    • Category: - The descriptive category for classification of the software. For example: Networking, Utilities.

    • Developer: - The developer of the software. Suggested input: "ThousandEyes" or "ThousandEyes, Inc."

    • Unattended install: - Determines whether you want the software to install quietly in the background, or require users to manually install the software. It is recommended that you select True.

    • Unattended uninstall: - Determines whether you want the software to be uninstalled quietly in the background on the user's device. It is recommended that you select True.

    • Catalogs: - Determines the catalog you would like to use. Best practice is to use a testing catalog until you are ready for deployment.

    At the end of the interactive menu, and depending on your inputs, you should see something similar to the below:

    Item name: Endpoint Agent for ThousandEyes - IT-x64
    Display name: ThousandEyes Endpoint Agent
    Description: Endpoint network monitoring tool
      Version: 1.3.0
      Category: Networking
    Developer: ThousandEyes, Inc
    Unattended install: True
    Unattended uninstall: True
      Catalogs: testing
    
    Import this item? [y/n]
  4. Enter y and press Return.

  5. Choose a folder location for the file. An example of a folder path you could use is as follows:

    apps/ThousandEyes/Endpoint Agent
  6. If the folder you specify does not exist, you may be prompted to create it.

    If this is unexpected behavior, enter n and Return and verify your folder path. If this is expected behavior, enter y Return.

  7. You will then be asked if you would like Munki to extract the product icon. Enter y and Return so that the icon is automatically extracted and presented to end-users. It should output something similar to the below:

    Attempting to extract and upload icon...
    Imported icons/Endpoint Agent for ThousandEyes - IT-x64.png.
    Copying Endpoint Agent for ThousandEyes - IT-x64-1.3.0.pkg to repo...
    Copied Endpoint Agent for ThousandEyes - IT-x64-1.3.0.pkg to pkgs/apps/ThousandEyes/Endpoint Agent for ThousandEyes - IT-x64-1.3.0.pkg.
  8. You will be asked if you want to edit the metadata (pkginfo) before you begin the upload process. Enter n and Return.

  9. Finally, you will be asked if you want to rebuild catalogs. Enter y and Return. As long as no errors are returned, the package should be imported successfully.

  10. Place the files in the remote Git repo, using the necessary Git commands relevant to your process. If you are not using Git, place the files that have been created onto the remote server.

Modifying Metadata and Manifest Information for Production Deployment

After you have successfully completed testing of the application deployment process, you will need to modify the manifest to use your production manifest.

Add the Display Name to either the optional_install or managed_install key.

For example:

munki/repo/manifests/common

Add it to one of the following keys:

<key>managed_installs</key>
        <array>
        </array>
<key>optional_installs</key>
        <array>
        </array>

To modify the pkgsinfo file, to add it to your production, open a text editor and point to your pkgsinfo file (our example below):

repo/pkgsinfo/apps/ThousandEyes/Endpoint Agent for ThousandEyes Endpoint Agent-x64-1.3.0

Add the catalog. For example:

<key>catalogs</key>
        <array>
                <string>testing</string>
                <string>Production</string>
        </array>

Updating and Redeploying

The ThousandEyes Endpoint Agent updates automatically. You do not need to redeploy for each new version. Redeploy only for broken releases.

Last updated