ThousandEyes

dpodgors
Contributor

Anyone in JAMFnation use it? Pros Cons? How bad is it to implement and have you seen any degradation on the Mac's?

Thanks in advance.

5 REPLIES 5

DMH2000
New Contributor III

Newby here, so want to apologize if I tread on any toes... ThousandEyes has barely any documentation for Enterprise Deployment. They want you to install and use Munki to make a package. Kind of ridiculous since I have done all of the company installs through Composer and MacAdmins packages. I just imported their package into Jamf and thanks to Jamf users, I got the extensions pushed via Configuration Profiles. Here is the borrowed script and my pictures for Google Chrome.
You would load ddnennmeinlkhkmajmmfaojcnpddnpgb into Extension ID 1

{ "title": "Google Chrome Extensions (com.google.Chrome)", "description": "Install extensions in Google Chrome", "properties": { "ExtensionInstallForcelist": { "title": "Extension Install Forcelist", "description": "Add extension IDs. Paste the extension ID in front of the default text.", "property_order": 5, "type": "array", "items": { "title": "Extension ID", "default": "<paste extension ID here>;https://clients2.google.com/service/update2/crx", "type": "string" } } } }

853ea10da9624f86890cf8f63e941b95
dafb9012dc0b481cb5c45434d994eeb7

DMH2000
New Contributor III

Here's another one for Microsoft Edge for Chromium. Just jostled the script for com.microsoft.Edge:
You would load obdencanbejmhpbikpcgkdflkffifoof into Extension ID 1

{ "title": "Microsoft Edge Extensions (com.microsoft.Edge)", "description": "Install extensions in Microsoft Edge", "properties": { "ExtensionInstallForcelist": { "title": "Extension Install Forcelist", "description": "Add extension IDs. Paste the extension ID in front of the default text.", "property_order": 5, "type": "array", "items": { "title": "Extension ID", "default": "<paste extension ID here>;https://edge.microsoft.com/extensionwebstorebase/v1/crx", "type": "string" } } } } 1f00070079d748fe9a9f53b39fea7508

DMH2000
New Contributor III

I would think you could also just do a straight Plist. This is for Google Chrome extension: Preference Domain: com.google.Chrome

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>ExtensionInstallForcelist</key> <array> <string>ddnennmeinlkhkmajmmfaojcnpddnpgb;https://clients2.google.com/service/update2/crx</string> </array> </dict> </plist>

This one for the MS Edge for Chromium extension: Preference Domain: com.microsoft.Edge

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>ExtensionInstallForcelist</key> <array> <string>obdencanbejmhpbikpcgkdflkffifoof;https://edge.microsoft.com/extensionwebstorebase/v1/crx</string> </array> </dict> </plist>

DMH2000
New Contributor III

Here is a walk through of how to install the configuration file after the app has been installed, using Composer:

  1. Download agent from your ThousandEyes Portal      

DMH2000_0-1644009315247.jpeg

  1. Download zip file (will be in Downloads Folder)            

DMH2000_1-1644009315249.jpeg

  1. Open zip file, you will see the folder and 2 files:          

DMH2000_2-1644009315253.jpeg

  1. Install the application from the package.
  2. Open Composer - Add 'ThousandEyes Endpoint Agent.app' 
  3. Copy 'installation-config.te-endpoint-agent' file (from the opened zip folder) to root of app, in Composer:

DMH2000_3-1644009315258.png

  1. Add PostInstall Script: "/Applications/ThousandEyes Endpoint Agent.app/Contents/MacOS/te-agent" --applyconfig "/Applications/ThousandEyes Endpoint Agent.app/installation-config.te-endpoint-agent"

DMH2000_4-1644009315263.png

  1. Then change permissions
  2. Select 'Build as PKG' and upload it to JAMF.
  3. Deploy to Test computer(s)

jimmy-swings
Contributor II

I tend to simply processes such as these so that an update can be managed by junior members of the team. In my case, I've created an installation script (below), and the team follow the following steps to upload updates:

  1.  Download and open zip file 
  2. Upload the package "Endpoint Agent -x64-<version>.pkg" to a distribution share
  3. Update Jamf Policy "ThousandEyes Agent Installer" with new package version
  4. Test deployment

 

Installation Script (abridged to include only relevant steps)

 

#!/usr/bin/env zsh

# Script Name:  Application - ThousandEyes - Install.zsh
# Description:  Activates the application to vendor specifications
# Author:       james.stracey@mac.com

APPLICATION_PATH="/Applications/ThousandEyes Endpoint Agent.app"
JAMF_BINARY="/usr/local/bin/jamf"
TE_CONFIGURATION_KEY="xxx"

# Step 1: Install application
    if [ ! -f "${APPLICATION_PATH}/Contents/Info.plist" ]; then
        write_log "Executing installation..."
        "$JAMF_BINARY" policy -event thousandeyes-install -forceNoRecon
    fi

# Step 2: Create configuration file
    # setup temp folder
    TMP_PATH=$(mktemp -d -t ci)  || exit 1
    write_log "TMP_PATH: ${TMP_PATH}"

    # write out configuration file
    echo "${TE_CONFIGURATION_KEY}" > "${TMP_PATH}/te-endpoint-agent"

# Step 3: Configure the application
    if [ ! -f "${APPLICATION_PATH}/Contents/MacOS/te-agent" ]; then
        write_log "Installation failed..."
        ERROR_CODE=1
    else
        write_log "Applying configuration..."
        "${APPLICATION_PATH}/Contents/MacOS/te-agent" --applyconfig "${TMP_PATH}/te-endpoint-agent"
    fi

# Step 4: Remove working files
    # remove temp folder
    if [ -d "${TMP_PATH}" ]; then
        write_log "Removing temp folder..."
        rm -rf "${TMP_PATH}"
    fi

exit ${ERROR_CODE}