Windows Servicing in the work from anywhere era using IPUInstaller

During the Nordic Virtual Summit me and Ronni Pedersen did a session on “Windows Servicing in the work from anywhere era”, great event, great fun! Nordic Virtual Summit – A virtual IT Pro Community Event!

During that session we demoed a new community tool or actually two community tools from my colleague Johan Schrewelius.

DeploymentScheduler – An advanced UI to schedule updates, app deployments, upgrades, reboots and much more.

IPUInstaller – A solution to do Windows 10 Servicing in a new way, with driver support, post upgrade actions, full media or .ESD support and much more.

It can be downloaded here together with the manual,  
Here is a short video on how the end-user experience could look like.

One of the reasons this was developed was to provide an alternative to Task Sequence and Windows Servicing to manage upgrades of Windows 10 to Windows 10. Task Sequences are the most used way to do in-place upgrades when we asked the community on Twitter.

Many customers and end-users are getting tired of the long downtime when doing an in-place upgrade of Windows 10 using a Task Sequence. Work from home also requires us to do things in new ways.

I did a non-scientific comparison between some options. Fairly clean Windows 10 1909 upgraded to Windows 10 20H2.
This will take longer when testing on a computer that has been used for a while.

We always want the user to be productive which is the main driver from the end-users and business. IPUInstaller is an application that we deploy just like that, an application in Configuration Manager. It has a folder structure that looks like shown below.

In the media folder we place a fully updated In-place upgrade media, which can be created for example by using WIM Witch which is a great tool by Donna Ryan.
In the SetupComplete folder we can add post commands and for all of you using TSBackground you will recognize Runsilent.exe and Runsilent.ini. Which can be used to run commands hidden, for example suppress the blue PowerShell splash screen.
Example from what I have in my folder when testing.

Runsilent will create a log file as well in C:\Windows\Temp where you can see the exit codes from the commands and help you troubleshoot.
In Configuration Manager we extend the HW inventory and create a collection structure that looks like this.

The computer will then move between Failed, Succeeded and pending reboot based on the inventory of registry values that the are written by IPUInstaller.

If IPUInstaller failes there will be more values in the inventoried IpuResult as shown below.

There is also a script that can be run as a Run Script in the console to retry the upgrade.

Johan has created a useful tool which provides us a new way of managing In-place upgrades, he has also written a great documentation which you can find here

Test it out and provide any feedback!


Add a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.