Example - BigFix Maintenance Window Override

Hello!

We use maintenance windows as a way to aggregate changes during the week and apply them once the server’s maintenance window has arrived. This is done by constraining the action on the “In Maintenance Window” property:

The problem with this is that if you want something to apply sooner for a specific machine (a new computer, a test computer, etc) you would then have to produce multiple actions for each piece of content instead of relying on application during maintenance windows.

We wanted an easy way for developers and administrators to put their own systems into maintenance prior to the enforced maintenance window (so they could test changes ahead of production rollout, make changes occur more quickly on certain devices, etc).

To accommodate this we simply added or exists (values whose (it as boolean = true) of settings "MaintenanceWindow_Override" of client) to the end of the In Maintenance Window property and then produced two fixlets: One that enables the override and one that disables it.

Here are the Fixlets:
Override Fixlets.bes (2.1 KB)
In Maintenance Window with Override Property (4.9 KB)

We push out a policy which disables overrides every night so that a machine doesn’t stay in maintenance forever :slight_smile:

Hope this is helpful for someone!

Bill

@strawgate, this is a great tip. I’ve been thinking of doing something similar for our different sets of endpoints with different maintenance windows.

If you use the ‘run only when’ constraint, does precaching still happen?

You’d want to test it but it’s my understanding that precaching will work as long as you use “run only when”.

On that note, if you put the “in maintenance window” as your dynamic targeting or put it into relevance it won’t work.

Right now we deploy with the Starts/Ends selections, but those aren’t saved in presets. I was hoping that ‘in maintenance window’ would do this. Similarly, adding custom action relevance to resolve to true if during the window… that also won’t precache.

1 Like

We Setup a global preset for “In Maintenance Window” and have our operators use that.

We really like how it’s been working so far!

Maybe I misread your earlier post. Does “Run only when = In Maintenance Window”, in fact, still precache?

Sorry, yes.

It’s my understanding that Run Only When "Maintenance Window" equals "True" or whatever the required entry is should still precache.

The machine will sit at “Constrained” until it hits its maintenance window. I believe this is the required status for precaching.