Best Practice and couple questions

Hello dear community,

I have a question about PDQ Deploy.
I had already asked a similar question once, but wanted to make a new thread.

Here are my questions & I hope you can support a little.

1) I would like the computer to update itself every time it is started.
How do you do that?

Do you have a single package : Check Updates and then all applications are included as a nested package?

Is it better to make a schedule for each software?

2) How do you handle new computers?
We use MDT with WDS to deploy Windows.
Should I just put all the computers that are newly installed into one OU and then just poll them?

How do you do that?

New PC is bought, you install Windows on it automatically & then?

How do you handle updates?
Thanks for your suggestions and support!



Date Votes
  • 1)  Build collections (or use the Collection Library).  Create schedules for applications in PDQDeploy that run on a heartbeat trigger and use the Collection as your target.

    2) We have imaged machines put in a particular OU.  Then we have a scheduled job that has all of the packages/updates attached to it.  This job runs every 15 minutes during business hours and the target is that AD OU.  The only pain is that we have to manually move the completed workstations to the appropriate OU afterwards.

  • Hello Mike,

    thanks for your answer & suggestions.

    1) Does it make sense to make a schedule for each application?

    Or is it better to make a schedule that is triggered via heartbeat and contains all packages?

    Also, currently I build my collections in Inventory like this:

    In current appear all computers that are via group policy (if available) and have the current software.

    In misc appear all devices which have no GPO but have the PRogram anyway

    In Needed appear all devices that do not have the program installed but are in the group

    In Other appear all devices that have not been updated yet and are in the group.

    Should I do it this way?

    Does it make sense when you update software that you make a package where Install & Uninstall are in it? Could you show as an example how you do an update or how the package looks like? 


  • It looks to me like you've overcomplicated things for yourself.  By using the built-in Collection Library, your Current, Not Installed, Old are all maintained for you as new versions are released:

    Here is what my "Base Install" schedule looks like:


    Again, my Target is an Active Directory OU:

    And here is what I apply to them:

    For updating all the different apps across the environment, I use a schedule per package.  



  • Hello Mike,
    thanks a lot for sharing!

    I definitely understood & like the approach.

    I actually thought a bit too complicated there..

    The only thing I wonder:
    Are you working with software that is controlled by groups?

    E.g. Adobe Illustrator we have a group RES_Adobe_Illustrator for it. 
    Now when I put a computer into this group, this software should be installed.

    Do you have something like that? If so, do you also do this via the Schedulde Jobs? 
    E.g. check for heartbeat or check every X minutes & if there is something to check then delete?

    You are helping me a lot! Thanks 100x

  • Most of the software comes from the Package Library in PDQ Deploy.  If it's not, then I have to update my Dynamic Collection to reflect different version numbers.

    For your RES_Adobe_Illustrator group, you would have to create a Static Collection and add the machines you want to have it to that Collection.  Then, you have a Schedule to install Illustrator with the Target being that Collection.  The heartbeat is a built-in trigger.  It detects when a computer goes from an offline state to an online state.  To keep Illustrator from being installed over and over again, you can select the box that says Stop deploying once it succeeds.



Please sign in to leave a comment.

Didn't find what you were looking for?

New post