Installing SharePoint patches have been an issue since forever. Over the years, the strategy from Microsoft has changed a couple of times. CU became PU’s, language packs were removed. Worst thing was when Microsoft decided to roll out patches via WSUS / Windows Update…

Then SharePoint 2016 came and Zero Downtime Patching was introduced. Reason is that Microsoft now has to patch O365 as well, and there should not be any downtime.

My initial thought was this would be amazing, but I’m slightly disappointed. Yes, you can install patches without any downtime, but it is still a very cumbersome and manual process. This video explains this very well in details. I really appreciate all the documentation and blog posts from Microsoft, but I don’t understand why in 2017 we still have to execute so many manual steps to install SharePoint patches.

Then I found SPPatchtify which solves this!

This script does everything for you:

  1. Download the patches
  2. Install them on all servers
  3. Run psconfig where required.

I’ve just tested it on a 2-server SharePoint 2016 farm, and it works amazing! It is not using Zero Downtime Patching, but “Minimal Downtime Patching” as Jeff explains here.

For now, that’s fine for us, I’ll investigate if we can improve the script to support ZDP.

So, how to install the patches in just three steps?

  1. Go here and click Download.
  2. Extract this file on one of you application servers
  3. Run SPPatchify.ps1

Sit back and relax and do something else.

What if your servers don’t have internet access?

In our environment, our SharePoint servers don’t have internet access. Currently there’s no “SPPatchify source builder” like with AutoSPInstaller. You will have to download the patches manually, and copy them to \SPPatchify\media manually.

  1. Go to the CSV file with all the patches
  2. Download the required updates for your farm.
  3. Copy them to SPPatchify\media

That’s it.

Frankly, I believe a script like this should be included in an enterprise product like SharePoint, and not be the responsibility of the community. I can’t imagine that Microsoft is installing patches across the thousands of servers manually either….