Configuration ManagerHow-to

Automatic deployment rules for Patch Tuesday: a ring-based setup in Configuration Manager

Build one Patch Tuesday automatic deployment rule with pilot, early and broad deployments, an offset schedule and maintenance windows, then confirm each run in RuleEngine.log.

Manually building a software update group every month doesn't scale, and deploying the same updates to every device on the same day is how a bad patch becomes an outage. In this post I'll build a single automatic deployment rule (ADR) in Configuration Manager that creates the monthly group and deploys it in rings — pilot, early adopters, broad and servers — with schedules you can predict and logs that prove each run worked.

How this guide is organised: How it works → Step-by-step → Verify → Tips & gotchasFlow diagram of the article's sections in reading order: 1. How it works. 2. Step-by-step (5 steps: Create the rule; Define the update criteria; Schedule evaluation with an offset; Configure the pilot deployment; Add the remaining rings). 3. Verify. 4. Tips & gotchas. Toolbox: ruleengine.log, PatchDownloader.log, Monitoring › Deployments, %windir%\CCM\Logs.1How it works2Step-by-step3Verify4Tips & gotchas1Create the rule2Define the updatecriteria3Scheduleevaluation with an…4Configure the pilotdeployment5Add the remainingringsTOOLBOXruleengine.logPatchDownloader.logMonitoring › Deployments%windir%\CCM\LogsHow this guide is organised: How it works → Step-by-step → Verify → Tips & gotchasFlow diagram of the article's sections in reading order: 1. How it works. 2. Step-by-step (5 steps: Create the rule; Define the update criteria; Schedule evaluation with an offset; Configure the pilot deployment; Add the remaining rings). 3. Verify. 4. Tips & gotchas. Toolbox: ruleengine.log, PatchDownloader.log, Monitoring › Deployments, %windir%\CCM\Logs.1How it works2Step-by-step1Create the rule2Define the update criteria3Schedule evaluation with an offset4Configure the pilot deployment5Add the remaining rings3Verify4Tips & gotchasTOOLBOXruleengine.logPatchDownloader.logMonitoring › Deployments%windir%\CCM\Logs
At a glance: how this guide is organised · 5 steps · 4 key settings and tools

How it works#

An ADR runs on a schedule, after a software update point (SUP) synchronisation, or when you click Run Now. It selects updates that match your criteria, downloads them into a deployment package, puts them into a software update group and deploys that group. One ADR can carry several deployments, each targeting its own collection with its own schedule and user experience. That's what turns one rule into rings.

Before you start, you need:

  • A successful SUP synchronisation. Create the ADR after the first sync, especially on non-English sites, so classification names match.
  • One collection per ring. Use exclude rules so a device lands in only one ring.
  • Maintenance windows on server collections, with Apply this schedule to set to Software updates or All deployments.
  • A package source share where both you and the SMS Provider's computer account have write permission.

Here's the design used in this post. In an ADR, the deadline is counted from the available time, and both are counted from the rule's evaluation:

RingCollectionAvailableDeadline (after available)
0 – PilotIT and test devicesAs soon as possible2 days
1 – EarlyA representative slice of each department2 days3 days
2 – BroadAll other workstations7 days7 days
ServersServer collections with maintenance windows7 days1 day, installed inside the window

Step-by-step#

1. Create the rule#

Go to Software Library › Software Updates › Automatic Deployment Rules and select Create Automatic Deployment Rule. On the General page:

  • Template: Patch Tuesday.
  • Collection: Ring 0 – Pilot.
  • Choose to create a new software update group each time the rule runs. When a rule adds to an existing group, it first removes everything already in that group, which suits daily definition updates but not monthly patching.
  • Leave Enable the deployment after this rule is run selected, or clear it if you want a manual review gate: the site then creates the group and distributes content but leaves the deployment disabled.

On Deployment Settings, set the type to Required.

2. Define the update criteria#

On the Software Updates page, combine property filters such as:

  • Date Released or Revised: a short recent window, so the rule only picks up this month's releases.
  • Product: the Windows client and server products you actually sync.
  • Update Classification: Security Updates and Critical Updates, plus any others you deploy monthly.
  • Superseded: No.
  • Architecture: exclude what you don't run, but keep x86 alongside x64 unless you're sure, because 32-bit components exist on 64-bit systems.

Preview the results before moving on. A rule can return at most 1,000 updates.

3. Schedule evaluation with an offset#

On Evaluation Schedule, run the rule on a monthly schedule. ADRs can be offset from a base day: if Patch Tuesday content only reaches your SUP on Wednesday local time, schedule the second Tuesday with a one-day offset. Make sure a synchronisation completes before the rule runs, and never schedule evaluations more often than synchronisations. Avoid running a "new group" rule after every sync, or you'll get a new group each time.

4. Configure the pilot deployment#

  • Deployment Schedule: choose client local time or UTC. Available As soon as possible; deadline Specific time, 2 days. The effective deadline includes a random delay of up to two hours.
  • User Experience: keep notifications on and decide whether installs and restarts may happen outside maintenance windows at the deadline. Enable re-evaluation after restart so devices pick up anything that becomes applicable.
  • Download Settings: decide whether clients may use neighbour or site default boundary group distribution points.
  • Deployment Package: create one package for the rule (for example, Windows monthly updates), reuse it, and target a distribution point group.

On the Summary page, use Save As Template so future rules start from the same settings.

5. Add the remaining rings#

Select the rule and choose Add Deployment in the ribbon. The wizard repeats the collection, deployment settings, schedule, user experience, alerts and download pages. Add Ring 1, Ring 2 and Servers with the timings from the table. For servers, set the deadline behaviour so installation and restarts wait for the maintenance window.

Tip: Since version 2203, available and deadline times are calculated from when the evaluation is scheduled to start, not when it finishes, so ring timings no longer drift with long downloads.

Verify#

  1. Select the rule and click Run Now (only in a test cycle — it creates a real group). Check the Last Error Code column, then open ruleengine.log on the site server. A healthy run contains lines like these (exact wording can vary between versions):
    Text
    CRuleHandler: Processing Rule with ID:1, Name:Windows monthly updates.
    Rule resulted in a total of 4 updates
    1 update(s) need to be downloaded in package "PS100012"
    We need to create a new UpdateGroup/Deployment
    CRuleHandler: Rule 1 Successfully Applied!
  2. If downloads fail, read PatchDownloader.log; for ADRs it's in %windir%\CCM\Logs on the site server when the client is installed there.
  3. Under Software Update Groups you should see a new group, and under Monitoring › Deployments one deployment per ring with the expected available and deadline times.
  4. Track progress with View Status on each deployment, the Monitoring › Overview › Security › Software Updates Dashboard, and the reports in the Software Updates – A Compliance category.

Tips & gotchas#

  • Bad patch? Stop the later rings. Disable or delete the Ring 1, Ring 2 and Servers deployments on that month's group before their available time; the pilot has already told you what you need to know.
  • Use the Deployed filter carefully. It helps find updates you haven't deployed yet, but an update deployed to your pilot already counts as deployed.
  • Maintenance windows must fit the updates. An update won't start if its maximum run time doesn't fit in the remaining window — see updates not installing from Configuration Manager for the client logs.
  • Keep the catalogue lean. ADRs evaluate faster against a maintained SUP — see software update point and WSUS maintenance.
  • Organise. Since version 2207 you can put ADRs in folders, which helps once you have separate rules for Windows, Microsoft 365 Apps and definitions.

References#

Written and checked against current Microsoft Learn documentation. Test changes with a pilot group before rolling them out to everyone, and if an admin center path has moved since, search for the setting name instead.

Spotted a mistake, or did this fix work differently for you? Email me or message me on LinkedIn — corrections are credited in the article.

Written by

Omer Eltayeb

Intune Subject Matter Expert in Cairo, Egypt, former Microsoft Cloud Solutions Architect, Microsoft Certified Trainer and Microsoft Innovative Educator Expert (2024–26) and Microsoft Elevate Educator Expert (2026–27). I share practical, step-by-step guides, study plans, scripts and toolkits for Microsoft Intune, Configuration Manager, Microsoft Entra ID, Microsoft Defender, Exchange and Microsoft 365 with the community.

Microsoft Certified Trainer (MCT) 2026Microsoft Innovative Educator Expert 2025–2026Microsoft Elevate Educator Expert 2026–2027ISC2 Certified Information Systems Security Professional (CISSP)Microsoft 365 Certified: Enterprise Administrator Expert (MS-102)