A frequent request for the open source tool Nudge is local timezone support. Nudge was coded to use UTC for configuring and enforcing the installation deadline for macOS updates.
This means that global companies have had to pick a single deadline for their entire fleet. Alternatively they could deploy multiple configurations for different regions. Neither option is ideal.
Bob Gendler set out to code a local timezone feature only to find out, to everyone’s surprise, that it already exists!
Read on for the details…
Nudge’s deadline is configured with the requiredInstallationDate
key as part of the osVersionRequirements
array. Previously, admins using a configuration profile were encouraged to set this key’s value as a date
while those using a JSON file (or Jamf’s Custom Schema) set the key as a string
.
In hindsight, this is likely what led to some confusion as to why admins were seeing different results when configuring their installation deadlines via different methods.
What Gendler discovered is that when you set the value as a date
, Nudge calculates the deadline based off UTC as documented. However if you set the value as a string
, Nudge instead uses the local timezone of the Mac.
However, your ability to take advantage of this newly found feature will depend on how you configure Nudge.
- Configuration Profile: Admins using a config profile now have the option of using either UTC or local timezones.
- JSON configuration file: Whether the JSON file is on disk or on a remote web server, the only option is UTC.
- Jamf Pro JSON Schema: Jamf uses a
string
when converting the JSON to XML, so the only option is local timezones.
I have already updated the Nudge Wiki with examples. If you have any questions please join us in the #nudge channel on the MacAdmins Slack.
UPDATE, March 22, 2023 @ 9:27 PM: Additional clarification around local JSON config files and Jamf Pro Custom Schema was added.
Pingback: Weekly News Summary for Admins — 2023-03-24 – Scripting OS X
Pingback: Testing a local timezone deadline in Nudge – Alan Siu's Blog
Can I configure Nudge without a deadline Date and only use deferrals? I don’t want to have keep managing this deadline using my Configuration Profile in Jamf. Example, We have new hire onboarding > computer is outdated > they get a nudge notification with 14 deferrals remaining. Reality, because the deadline has already passed > new hires have a -7 days remaining.
Unfortunately no. There are only two required keys that you must configure and “requiredInstallationDate” is one of them.
https://github.com/macadmins/nudge/wiki/Common-Issues#over-configuring-nudge