-
Notifications
You must be signed in to change notification settings - Fork 84
Deferral Behavior
If there is no actively logged in user (the system is at the login window) then the super
workflow automatically downloads and installs any macOS updates requiring a restart. Conversely, if a user is actively logged in and the super
workflow has successfully downloaded an update that requires a restart, then the default behavior is to ask the user if they want to restart now or defer until later.
Regardless of the user being logged in or not, there are a variety of reasons why super
may automatically defer the update workflow until a later time. For example, if super
detects an error then it automatically defers until later. More commonly though, an active user is choosing to defer an update restart until later.
Also, because the deferral options do not specify a weekday or time of day, the --schedule-workflow-active
option can be used to ensure that deferred dialogs and notifications fall within your specified times.
The number of minutes to defer until the next update workflow attempt if a user choses not restart.
Command option example:
--deferral-timer-default=120
Command option disable example:
--deferral-timer-default=X
Configuration profile example:
<key>DeferralTimerDefault</key>
<string>120</string>
Using this option overrides the default deferral time which is set to 60 minutes (1 hour). Times less than 2 minutes or more than 10080 minutes (1 week) are rounded accordingly. Also, if any days or date deadline options are sooner than the default deferral timer then it's reduced to match the closest deadline.
Setting this option also affects the focus deferral timer when any focus deadlines are enabled but you have not specified the --deferral-timer-focus
option. Further, setting this option also affects the error deferral time unless you specify the --deferral-timer-error
option. Finally, this deferral timer is automatically selected if you also specify a dialog timeout option.
Display a deferral time pop-up menu in the non-deadline restart dialog that allows the user to override the --deferral-timer-default
timer.
Command option example:
--deferral-timer-menu=5,30,60,120
Command option disable example:
--deferral-timer-menu=X
Configuration profile example:
<key>DeferralTimerMenu</key>
<string>5,30,60,120</string>
The time selections are specified with one or more number of minutes that are comma separated with no spaces. Times less than 2 minutes or more than 10080 minutes (1 week) are rounded accordingly. Also, if any days or date deadline options are sooner than any menu deferral timer item then it's reduced to match the closest deadline.
The first number in the list is the default selection for the menu, thus it's automatically selected if the user doesn't choose another time from the menu or you also specify a dialog timeout option.
The deferral menu in an update dialog
The number of minutes to defer automatically if the user has enabled Focus/Do Not Disturb or when a process has requested that the display not go to sleep (for example, during an active meeting).
Command option example:
--deferral-timer-focus=120
Command option disable example:
--deferral-timer-focus=X
Configuration profile example:
<key>DeferralTimerFocus</key>
<string>120</string>
With this option you must also specify at least one of the deadline focus options; --deadline-count-focus
, --deadline-days-focus
, or --deadline-date-focus
. Times less than 2 minutes or more than 10080 minutes (1 week) are rounded accordingly. Also, if any days or date deadline options are sooner than the focus deferral timer then it's reduced to match the closest deadline.
The number of minutes to defer if super
detects an error in the workflow (for example, network or MDM connectivity issues).
Command option example:
--deferral-timer-error=120
Command option disable example:
--deferral-timer-error=X
Configuration profile example:
<key>DeferralTimerError</key>
<string>120</string>
Using this option overrides the default error deferral time which is set to the same value as the --deferral-timer-default
option. Times less than 2 minutes or more than 10080 minutes (1 week) are rounded accordingly.
The number of minutes to defer if no software updates are available or allowed. Enabling this option results in super
acting as a permanent agent that checks for software updates on a regular basis.
Command option example:
--deferral-timer-workflow-relaunch=1440
Command option disable example:
--deferral-timer-workflow-relaunch=X
Configuration profile example:
<key>DeferralTimerWorkflowRelaunch</key>
<string>1440</string>
Using this option overrides the default workflow relaunch time which is set to 360 minutes (6 hours). Times less than 2 minutes or more than 43200 minutes (30 days) are rounded accordingly.
Logically, this option can not be used along with the --skip-updates
option.
Reset all locally set deferral timer options to their default setting.
Command option example:
--deferral-timer-reset-all
This option can not be set via a MDM configuration profile. However, any other deferral options that are specified via a super
MDM configuration profile remain in effect.