I am trying to create one deployment condition as soon as machine is rebooted, one of the Job gets applied. So I created a custom property UPTIMEMINUTES and using the constraint to run only when UPTIMESMINUTES is less than 10 mins(sample). Still job is going to constraint status until its hitting 10 mins of UPTIME. Any thoughts on this. Ideally it should execute
Don’t use properties and constraints. By doing so, you are building a delay - properties get evaluated on period and after a reboot it takes a few mins for the OS/agent to catch-up and resume its normal activites, and even if it is extremely fast properties even with “every report” or “every 5 mins” will be delayed by some time to refresh, and only once the property changes value then you are waiting for the actual action to be reevaluated which in itself can take another few minutes (agent does it once per cycle unless interrupted and force to do faster/quicker)…
Use direct relevance because there is no added delay at least - something like this should do it:
now - boot time of operating system < 10 * minute
But even with that approach (no added delays) 10 minutes is extremely low threshold. I have seen certain OS, especially after patching< take their time to come back in operational state and this has nothing to do with the BigFIx agent (when you login to the devices, you see the blue screen “applying patches” and you are waiting around which accrues uptime but doesn’t allow anything else to run). So be prepared that you may have instances where the window is missed…
Thank you for sharing your inputs, I tested on few OS which had application installed, though the deployment ran fine post reboot, agree its not worth the risk
One other option could be to have your fixlet that is performing the installation to set a runonce key that will allow the OS to run any post fixlet activates and avoid any complications of the uptime or evaluation cycle delays.
Run and RunOnce Registry Keys - Win32 apps | Microsoft Learn
I’d be thinking along the lines of using the fixlet action to :
- Perform whatever install that is required
- Create a script to perform any post installation tasks
- Set a runonce key that will run the script after reboot
- Whatever your current action is action the install fixlet has executed (eg force reboot, set soft reboot, prompt use for reboot etc etc)
Thank you. Let me give a try using runonce key.
