Assistance with Nudge Deployment in Jamf School?

MasterNovice
Contributor

UPDATING: This appears to be something with the Managed Configuration tab on the Managed App page that is failing, or possibly my editing of the mobileconfig in a way that messed up the identifier or other info. When using the example mobileconfig from the Wiki, and only editing the min OS version, deadline, and target OS, then deploying as its own profile, The -print-profile-config option Tribruin shared reflects the information from the deployed profile. I think that resolves this - now just need to review the options in the example and pare down to needed.  

--

Hello All,

I am attempting to deploy and leverage Nudge in order to help non-admin users meet update deadlines after update approval in Jamf School. I am referencing this blog here, as well as a few others and the nudge documentation at the git repo. I have:

- Deployed Nudge_Suite-1.1.10.81462.pkg to test device running MacOS 13.2.

- Applied the following plist as a managed configuration on the app page in Jamf School, using the example configuration as reference, reduced to the simple version posted in the same Wiki. Should I be deploying this as its own mobileconfig profile? The Jamf School documentation suggests managed configurations on the app page are the same thing, but I don't know if I've ever gotten it to work correctly after trying with Zoom and a few other apps. 

 

<?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>PayloadContent</key>
  <array>
    <dict>
      <key>osVersionRequirements</key>
      <array>
        <dict>
          <key>aboutUpdateURL</key>
          <string>https://support.apple.com/en-us/HT211896</string>
          <key>requiredInstallationDate</key>
          <date>2023-02-28T00:00:00Z</date>
          <key>requiredMinimumOSVersion</key>
          <string>13.2</string>
          <key>targetedOSVersionsRule</key>
          <string>13</string>
        </dict>
      </array>
      <key>userInterface</key>
      <dict>
        <key>simpleMode</key>
        <true/>
      </dict>
    </dict>
  </array>
</dict>
</plist>

 

Currently, Nudge is deployed, but does not run. How can I verify that the plist is delivered and being used by Nudge?

 

3 REPLIES 3

Tribruin
Valued Contributor II

Did you look at the section on checking the logs? 

Logging · macadmins/nudge Wiki (github.com)

You can stream the logs (log stream) or see the most recent logs (log show and then --last at the end)

Here are few troubleshooting steps:

1) Is Nudge installed in the /Applications/Utilities folder?

2) Is the LaunchAgent installed in /Library/LaunchAgents folder (com.github.macadmins.Nudge.plist)

3) What the status of the LaunchAgent? (launchctl list | grep "Nudge") Do you see an entry and the last status code (second column, should be a zero)

4) What happens if you run Nudge manually (/Applications/Utilities/Nudge.app/Contents/MacOS/Nudge)? Try having the log streaming in a terminal window when starting Nudge. 

5) Verify what Nudge sees as the profile (-print-profile-config option when running Nudge from the command line). Does it look right?

UPDATING: This appears to be something with the Managed Configuration tab on the Managed App page that is failing, or possibly my editing of the mobileconfig in a way that messed up the identifier or other info. When using the example mobileconfig from the Wiki, and only editing the min OS version, deadline, and target OS, then deploying as its own profile, The -print-profile-config option Tribruin shared reflects the information from the deployed profile. I think that resolves this - now just need to review the options in the example and pare down to needed.  

 

--

Ty for the reply @Tribruin ! I did see the logging option and ran a stream when starting the app. Apologies for not included this and the info you noted. The result is what had me thinking the managed config isn't applying correctly, but I don't know how to verify that, or how to resolve if it's the issue. The stream returns that the condition is met for update and that's why I can't start it. However, it was checking keys I hadn't included in my config, and some values for keys I did, didn't seem to match. The required operating system was listed as (0.0) where I had used 13. 

1. Nudge is installed in /Applications/Utilities

2. LaunchAgent is installed in /Library/Launchagents

3. There is an entry, the second column is 0

4. See above, stream reports that it's starting, but conditions are met and so is closing.

5. This returns (4) keys:

  • com.github.macadmins.Nudge:preferences-profile "Profile osVersionRequirementsKey is empty"
  • com.github.macadmins.Nudge:json-profile "Profile osVersionRequirements Key is empty"
  • com.github.macadmins.Nudge:preferences-profile "Profile UserExperience Key is empty"
  • com.github.macadmins.Nudge:json-profile "Profile UserExperience key is empty"

I appreciate the assist here!

Tribruin
Valued Contributor II

Based on your updated, it sounds like you are on to something. Make sure your profile is good and is downloaded on the computer. I don't use Jamf School, but it sounds like you configure profiles slightly different. But, check you profiles settings in System Preferences/Settings and see what has been downloaded to the computer. 

Also, you can go in to the folder /Library/Managed Preferences and look for the file com.github.macadmins.Nudge.plist. Make sure that file is there and read the contents using the defaults command.