Work Around for Scheduling Repeat Jobs To The "All Computers" Group in Deployment Solution
I recently assumed that when we scheduled a Deployment Solution job to the "All Computers" group that when the schedule got ready to run it would check the current contents of the "All Computers" group and run the schedule to include any computers added after the scheduled job was first scheduled. I was so sure of my assumption I went about 3 weeks before I realized that... I was wrong!
In our environment, we run a number of scripts against our clients to make sure they are configured properly and to do quick updates. Deployment Server is a natural place to do this and be able to see the results in real time.
In reality, this only applies to the members of "All Computers" at the time the scheduled job was created. Therefore, any machines that had been imaged and put in production were not being updated.
I put in a feature request with Altiris Support for this, but they suggested a complicated work around of comparing the SQL tables at the time it was created versus current and added those resources to the table, etc.
Not enough time for all that.
I did come across a pretty quick and easy workaround that will hopefully help any one else trying to accomplish the same result, using axsched and Windows scheduled Task.
- First, create a batch file that simply calls the axsched command line util and applies the needed job to "All Computers" at the given time for that day. (You can omit the date since the current date is assumed and that's what we want in this case as we will let scheduled task take care of that).
- Next, create a scheduled task to run in Windows on the DS Server, first thing in the morning, to execute the batch file. This will assign the clients in the "All Computers" group currently to that job at the appointed time in the batch file. Set the scheduled task to run on the schedule that you want (daily, weekly, monthly, etc.) and since it reschedules those jobs each time, no need to worry about whose been added since the last run.
That's it. Once the scheduled task kicks off, it will assign those jobs to "All Computers" and you will see them in DS as you normally would.
Hopefully this will be remedied in the next release but until that day comes, this seems to work like a charm.