I recently handled a call with a customer of ours that was in a frantic and confused state. They had scheduled a deployment to kick off in 3 days, but instead, it started running immediately. They had since stopped it, but they were curious how this could happen. What I found was an interesting situation that I thought was worth sharing as to the power of knowledge transfer when we work with our customers. I was explaining this to some other consultants and I agree with their assessment of it being a “case study in how NOT to do software distribution.” They allowed me to connect remotely and take a look; here is a breakdown of the situation.
As part of their previous testing, they had created a collection called OfficeDistribution. A package and program were created for Office testing and advertised to the OfficeDistribution Collection. There was very little special about this advertisement. The advertisement was set with mandatory times for testing and all of the other defaults were left, next, next, next, finish, close.
Once testing was completed, they right clicked on the advertisement and chose “Disable Program.”
Testing was completed and the manager asked them on Monday to schedule a deployment for Thursday. They created a collection named “Cincinnati” for deployment to their Cincinnati office as a subcollection of OfficeDistribution. The advertisement was set to not be available until Thursday afternoon and to run Thursday at 5pm.
Why did the advertisement kick off Monday morning and start running?
Answer: The Cincinnati collection is a subcollection of OfficeDistribution. By default, “Include members of subcollections” is checked when you create new advertisements. Once the GUI for the new Cincinatti advertisement was completed it re-enabled the program that was used in the testing deployments. Now that the program is no longer disabled AND the Cincinnati collection is a subcollection of the OfficeDistribution collection used in testing AND the testing collection still has a mandatory deployment time of last week, skynet is free to become self-aware.
There is nothing wrong with using subcollections, but it is important to use them wisely. Among the things we can all learn from is that I would never recommend disabling the program in the manner they did unless there is an emergency. All that does is disable the program, if you are done with an advertisement, delete it or at least remove the mandatory rules. Personally, I prefer to do my testing using a non-mandatory advertisement so that I can control when and how often I run the advertisement. Regardless, left enabled and with some other options, users would still see popups. My Tip, uncheck that box unless you have a reason to leave it checked. It’s easier to go back and check it than it is to explain why a deployment happened early.